当前位置: 首页 > news >正文

linux网络问题排查必须要懂的命令

‘’

1. ping命令

ping 最简单的功能就是传送 ICMP 数据包

[root@node-1 ~]# ping 192.168.31.19
PING 192.168.31.19 (192.168.31.19) 56(84) bytes of data.
64 bytes from 192.168.31.19: icmp_seq=1 ttl=64 time=0.201 ms
64 bytes from 192.168.31.19: icmp_seq=2 ttl=64 time=0.200 ms
64 bytes from 192.168.31.19: icmp_seq=3 ttl=64 time=0.177 ms
64 bytes from 192.168.31.19: icmp_seq=4 ttl=64 time=0.209 ms
64 bytes from 192.168.31.19: icmp_seq=5 ttl=64 time=0.190 ms
^C
--- 192.168.31.19 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 3999ms
rtt min/avg/max/mdev = 0.177/0.195/0.209/0.016 ms
  • 64 bytes:表示这次传送的 ICMP 数据包大小为 64 bytes 这么大,这是默认值, 在某些特殊场合中,例如要搜索整个网络内最大的 MTU 时,可以使用 -s 2000 之类的数值来取代

  • icmp_seq=1:ICMP 所侦测进行的次数,第一次编号为 1

  • ttl=49:TTL 与 IP 数据包内的 TTL 是相同的,每经过一个带有 MAC 的节点时,例如 router、bridge 时, TTL 就会减少一,预设的 TTL 为 255 , 你可以通过 -t 150 之类的方法来重新设定预设 TTL 数值

  • time=0.209 ms:响应时间,单位有 ms(0.001秒)及 us(0.000001秒), 一般来说,越小的响应时间,表示两部主机之间的网络联机越良好.

2. traceroute

跟踪主机之间的网络路径情况

$ traceroute to 114.114.114.114 (114.114.114.114), 30 hops max, 60 byte packets1  XiaoQiang (192.168.31.1)  3.873 ms  3.717 ms  3.609 ms2  192.168.1.1 (192.168.1.1)  3.547 ms  3.515 ms  3.489 ms3  172.16.64.1 (172.16.64.1)  15.171 ms  15.145 ms  15.112 ms4  183.233.109.157 (183.233.109.157)  10.108 ms  10.079 ms  10.047 ms5  221.179.3.240 (221.179.3.240)  14.984 ms  21.735 ms  18.334 ms6  221.183.39.149 (221.183.39.149)  14.872 ms  10.394 ms  10.325 ms7  221.183.41.42 (221.183.41.42)  40.900 ms *  40.832 ms

3. ip命令

通过 ip add区查看主机的ip信息情况,检查网卡状态、IP地址,网络位、MAC地址、MTU是否正确

[root@node-1 ~]# ip add
1: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000link/ether 00:0c:29:74:a2:d2 brd ff:ff:ff:ff:ff:ffinet 192.168.31.250/24 brd 192.168.31.255 scope global noprefixroute dynamic ens33valid_lft 92163sec preferred_lft 92163secinet6 fe80::20c:29ff:fe74:a2d2/64 scope link valid_lft forever preferred_lft forever

通过 ip route 去看主机路由情况,多网卡情况下,检查默认路由是否正确,静态路由是否正确

[root@node-1 ~]# ip route
default via 192.168.31.1 dev ens33 proto dhcp metric 100 
192.168.31.0/24 dev ens33 proto kernel scope link src 192.168.31.250 metric 100 

通过ip route get 查看地址192.168.31.19走的是哪条路由出去

[root@node-1 ~]# ip route get 192.168.31.19
192.168.31.19 dev ens33 src 192.168.31.250 cache 

4. telnet命令

telnet命令通常用来远程登录,我们可以利用它来检查目的服务器网络端口情况

[root@node-1 ~]# telnet 192.168.31.250 22
Trying 192.168.31.250...
Connected to 192.168.31.250.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.4

4. ss命令

通过ss命令查询一下自己的网络接口所监听的端口 (port) 来看看是否真的有启动

[root@node-1 ~]# ss -ntlpu 
Netid  State      Recv-Q Send-Q       Local Address:Port                      Peer Address:Port              
udp    UNCONN     0      0                        *:68                                   *:*                   users:(("dhclient",pid=913,fd=6))
tcp    LISTEN     0      128                      *:22                                   *:*                   users:(("sshd",pid=1094,fd=3))
tcp    LISTEN     0      100              127.0.0.1:25                                   *:*                   users:(("master",pid=1319,fd=13))
tcp    LISTEN     0      128                   [::]:22                                [::]:*                   users:(("sshd",pid=1094,fd=4))
tcp    LISTEN     0      100                  [::1]:25                                [::]:*                   users:(("master",pid=1319,fd=14))

stat:状态栏,主要的状态含有:

  • ESTABLISED:已建立联机的状态

  • SYN_SENT:发出主动联机 (SYN 标志) 的联机数据包

  • SYN_RECV:接收到一个要求联机的主动联机数据包

  • FIN_WAIT1:该插槽服务(socket)已中断,该联机正在断线当中

  • FIN_WAIT2:该联机已挂断,但正在等待对方主机响应断线确认的数据包

  • TIME_WAIT:该联机已挂断,但 socket 还在网络上等待结束

  • LISTEN:通常用在服务的监听 port

5. nslookup

nslookup用来作为 IP 与主机名对应的检查, 使用 /etc/resolv.conf 这个文件来作为 DNS 服务器的来源选择。

[root@node-1 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.31.1
[root@node-1 ~]# 
[root@node-1 ~]# nslookup baidu.com
Server:		192.168.31.1
Address:	192.168.31.1#53Non-authoritative answer:
Name:	baidu.com
Address: 110.242.68.66
Name:	baidu.com
Address: 39.156.66.10

tcpdump

在云生产环境,虚拟机通常遇到网络不通,可通过tcpdump or ovs-tcpdump工具进行抓包判断ip在哪个节点处于网络不可达。

# 抓取ens33的包
$ tcpdump -i ens33 [arp or icmp] host [vm_ip or vm_gateway] -nne
# 抓取ovs br-int的包
$ ovs-tcpdum -i br-int [arp or icmp] host [vm_ip or vm_gateway] -nne
# 抓取ens33的[in or out]的包
$ tcpdump -i ens33 [arp or icmp] host [vm_ip or vm_gateway] -Q [in or out] -nne
# 抓取ens33 的vxlan包
$ tcpdump -i ens33 dst 172.18.70.72(目的pod物理业务网卡IP) and udp

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 普元EOS-微前端的base基座介绍
  • 【0316】Postgres内核之VACUUM (FULL)运行 portal multi query (11)
  • python——requests
  • 解决Element-plus中Carousel(走马灯)图片无法正常加载的bug
  • react 路由创建与使用
  • WiFi的IP和电脑IP一样吗?怎么更改wifi的ip地址
  • 线段树+二分,CF 431E - Chemistry Experiment
  • Verilog刷题笔记60
  • 计算机网络-PIM-SM组播实验
  • C++:病毒系列回归记3/3 (Doge智能系统已上线)
  • 如何使用查询路由构建更先进的 RAG
  • 宠物掉毛、有异味怎么办?怎么选择宠物空气净化器?
  • OpManager Plus简单说明以及在Linux下的安装
  • 四、控制结构
  • 网络协议的基础知识
  • 4个实用的微服务测试策略
  • Fastjson的基本使用方法大全
  • Javascript 原型链
  • Javascript编码规范
  • JavaScript对象详解
  • js 实现textarea输入字数提示
  • JSDuck 与 AngularJS 融合技巧
  • Otto开发初探——微服务依赖管理新利器
  • python_bomb----数据类型总结
  • Python_网络编程
  • Python中eval与exec的使用及区别
  • Vue UI框架库开发介绍
  • Vultr 教程目录
  • 漫谈开发设计中的一些“原则”及“设计哲学”
  • 你真的知道 == 和 equals 的区别吗?
  • 前端设计模式
  • 如何用Ubuntu和Xen来设置Kubernetes?
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • Java性能优化之JVM GC(垃圾回收机制)
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • ​猴子吃桃问题:每天都吃了前一天剩下的一半多一个。
  • #LLM入门|Prompt#1.7_文本拓展_Expanding
  • (8)STL算法之替换
  • (Redis使用系列) Springboot 在redis中使用BloomFilter布隆过滤器机制 六
  • (笔记)M1使用hombrew安装qemu
  • (独孤九剑)--文件系统
  • (二)linux使用docker容器运行mysql
  • (没学懂,待填坑)【动态规划】数位动态规划
  • (推荐)叮当——中文语音对话机器人
  • (一)、python程序--模拟电脑鼠走迷宫
  • (一)ClickHouse 中的 `MaterializedMySQL` 数据库引擎的使用方法、设置、特性和限制。
  • (转)IOS中获取各种文件的目录路径的方法
  • (转)人的集合论——移山之道
  • *++p:p先自+,然后*p,最终为3 ++*p:先*p,即arr[0]=1,然后再++,最终为2 *p++:值为arr[0],即1,该语句执行完毕后,p指向arr[1]
  • *Django中的Ajax 纯js的书写样式1
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .NET关于 跳过SSL中遇到的问题
  • @media screen 针对不同移动设备
  • @SpringBootApplication 注解