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

2024-08-25 12:20

本文主要是介绍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

这篇关于linux网络问题排查必须要懂的命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1105542

相关文章

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

好题——hdu2522(小数问题:求1/n的第一个循环节)

好喜欢这题,第一次做小数问题,一开始真心没思路,然后参考了网上的一些资料。 知识点***********************************无限不循环小数即无理数,不能写作两整数之比*****************************(一开始没想到,小学没学好) 此题1/n肯定是一个有限循环小数,了解这些后就能做此题了。 按照除法的机制,用一个函数表示出来就可以了,代码如下

hdu1043(八数码问题,广搜 + hash(实现状态压缩) )

利用康拓展开将一个排列映射成一个自然数,然后就变成了普通的广搜题。 #include<iostream>#include<algorithm>#include<string>#include<stack>#include<queue>#include<map>#include<stdio.h>#include<stdlib.h>#include<ctype.h>#inclu

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

购买磨轮平衡机时应该注意什么问题和技巧

在购买磨轮平衡机时,您应该注意以下几个关键点: 平衡精度 平衡精度是衡量平衡机性能的核心指标,直接影响到不平衡量的检测与校准的准确性,从而决定磨轮的振动和噪声水平。高精度的平衡机能显著减少振动和噪声,提高磨削加工的精度。 转速范围 宽广的转速范围意味着平衡机能够处理更多种类的磨轮,适应不同的工作条件和规格要求。 振动监测能力 振动监测能力是评估平衡机性能的重要因素。通过传感器实时监

30常用 Maven 命令

Maven 是一个强大的项目管理和构建工具,它广泛用于 Java 项目的依赖管理、构建流程和插件集成。Maven 的命令行工具提供了大量的命令来帮助开发人员管理项目的生命周期、依赖和插件。以下是 常用 Maven 命令的使用场景及其详细解释。 1. mvn clean 使用场景:清理项目的生成目录,通常用于删除项目中自动生成的文件(如 target/ 目录)。共性规律:清理操作

缓存雪崩问题

缓存雪崩是缓存中大量key失效后当高并发到来时导致大量请求到数据库,瞬间耗尽数据库资源,导致数据库无法使用。 解决方案: 1、使用锁进行控制 2、对同一类型信息的key设置不同的过期时间 3、缓存预热 1. 什么是缓存雪崩 缓存雪崩是指在短时间内,大量缓存数据同时失效,导致所有请求直接涌向数据库,瞬间增加数据库的负载压力,可能导致数据库性能下降甚至崩溃。这种情况往往发生在缓存中大量 k