网络调试命令
1、ifconfig
命令
作用:linux
中用于显示或配置网络接口(网卡、网络设备)信息的命令。
**介绍:**在 linux
系统中,网卡的命名规则:eth0
为第一块以太网卡(Ethernet Card
),eth1
为第二块。
lo (loopback)
为回环接口,IP
地址固定为 127.0.0.1
,掩码255.0.0.0 (8位)
。它是一个虚拟的网络接口,通常用于对本机的网络测试。
虚拟网络接口:并非真实存在,并不真实的从外界接受和发送数据包,而是在系统内部接受和发送数据包,因此虚拟网络接口不需要驱动程序。
(1)查看网络接口信息,启用禁用网络接口(以 eth0
为例)
**ifconfig -a
:**显示所有的网络接口信息,不管是否激活。
**ifconfig
:**这个命令显示所有激活的网络接口的信息。
**ifconfig eth0
:**查看网络接口 eth0
信息。
ifconfig eth0 up
: 启用网络接口 eth0
。
**ifconfig eth0 down
:**禁用网络接口 eth0
。
# 查看所有网络接口信息
ifconfig
# 查看网络接口 eth0 信息
ifconfig eth0
# 启用网络接口 eth0
ifconfig eth0 up
# 禁用网络接口 eth0
ifconfig eth0 down
使用 ifconfig -a
示例:
ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:62 Base address:0x4000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
参数解释:
eth0:网络接口
link encap:网络类型
HWaddr:网卡物理地址
Inet addr :IP地址
Bcast:广播地址
Mask:子网掩码
UP:正在使用的网络接口
RX packets,TX packets接收和传输的数据包个数
RX byte,TX byte表示接搜和传输的具体数目
Interrupt:终端信息
Base address:内存地址
(2)设置 IP 地址、MAC 地址和子网掩码
ifconfig eth0 192.168.1.100
: 为网络接口 eth0
设置 IP
地址
ifconfig eth0 netmask 255.255.255.0
: 为网络接口 eth0
设置子网掩码
**ifconfig eth0 broadcast 192.168.1.255
:**为网络接口 eth0
设置广播地址
**ifconfig eth0 hw ether 00:1a:2b:3c:4d:5e
:**为网络接口 eth0
设置 MAC
地址
ifconfig eth0 192.168.1.100
ifconfig eth0 netmask 255.255.255.0
ifconfig eth0 broadcast 192.168.1.255
ifconfig eth0 hw ether 00:1a:2b:3c:4d:5e
2、ping
命令
**作用:**网络诊断工具
(1)ping 127.0.0.1
ping 127.0.0.1
判断内部 TCP/IP
协议栈是否正常,如果 ping
通了,说明本机的网络接口和 TCP/IP
协议簇被正确安装了。
(2)ping
远程地址
查看本网或本机与外部的连接是否正常
(3)ping
网关
检查和本机地址和网关的连接性
(4)测试网速
ping -n 30000 设备IP – 发送大包
,查看返回信息的时间延时来判断网速是否良好。
3、route
命令
作用:用于显示和操作 IP
路由表 (show/manipulate the IP routing table
)。
在命令行下执行 route
命令添加路由,不会永久保存,当网卡重启或者机器重启后,该路由就会失效。
命令参数:
-c 显示更多信息
-n 不解析名字
-v 显示详细的处理信息
-F 显示发送信息
-C 显示路由缓存
-f 清除所有网关入口的路由表。
-p 与 add 命令一起使用时使路由具有永久性。
add:添加一条新路由。
del:删除一条路由。
-net:目标地址是一个网络。
-host:目标地址是一个主机。
netmask:当添加一个网络路由时,需要使用网络掩码。
gw:路由数据包通过网关。注意,你指定的网关必须能够达到。
metric:设置路由跳数。
使用实例:
显示当前路由
route 或者 route -n
route -n (-n 表示不解析名字,列出速度会比route 快)
1 root@ubuntu:~# route -n
2 Kernel IP routing table
3 Destination Gateway Genmask Flags Metric Ref Use Iface
4 0.0.0.0 59.188.252.1 0.0.0.0 UG 100 0 0 br0
5 10.22.0.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
6 59.188.252.0 0.0.0.0 255.255.255.0 U 0 0 0 br0
7 172.22.0.0 0.0.0.0 255.255.255.0 U 0 0 0 br1
8 192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
Flags标志说明:
U Up表示此路由当前为启动状态
H Host,表示此网关为一主机
G Gateway,表示此网关为一路由器
R Reinstate Route,使用动态路由重新初始化的路由
D Dynamically,此路由是动态性地写入
M Modified,此路由是由路由守护程序或导向器动态修改
! 表示此路由当前为关闭状态
添加和删除设置默认网关:
route add default gw 192.168.120.240
route del default gw 192.168.120.240
**注:**当一个设备出现两个网卡的时候,即会有两个网关,数据通信时,就会相互干扰,比如发送网关1的数据可能会被发送到网关2。解决方法之一就是关闭其中一个作用不大的网关。
添加网关/设置网关
route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
屏蔽一条路由
route add -net 224.0.0.0 netmask 240.0.0.0 reject
4、netstat 命令
作用:用于显示与IP
、TCP
、UDP
和 ICMP
协议相关的统计数据,一般用于检验本机各端口的网络连接情况
(1)查看网络连接、监听状态
netstat -an|grep EST
列出网络建立连接情况,可以查看设备建立多少路连接,方便诊断设备的网络性能。
netstat -an|grep LISTEN
列出网络建立监听情况
(2)查看核心路由信息
netstat -rn