一、ifconfig指令
- [root@feel ~]# ifconfig
eth0: flags=4163 mtu 1500 - 网卡名 从flags可知该接口已启用,支持广播、组播,mtu值
inet 10.0.105.2 netmask 255.255.255.0 broadcast 10.0.105.255 - IP地址,子网掩码,广播地址
inet6 fe80::250:56ff:fe00:83 prefixlen 64 scopeid 0x20 - IPv6地址 掩码长度 作用域,link表示仅该接口有效
ether 00:50:56:00:00:83 txqueuelen 2000 (Ethernet) - 网卡接口的MAC地址 传输队列长度 接口类型为Ethernet
RX packets 7540931 bytes 1360094904 (1.2 GiB) -
下行表示此接口接收的报文个数,总字节数
RX errors 0 dropped 0 overruns 0 frame 0 - 接收报文错误数,丢弃数,溢出数,冲突的帧数
TX packets 10387450 bytes 1498110846 (1.3 GiB) - 上行表示此接口发送的报文个数,总字节数
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 - 发送报文错误数,丢弃数,溢出数,载荷数,冲突数
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 110 bytes 9884 (9.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 110 bytes 9884 (9.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
txqueuelen 是传输缓区长度大小意思
调整大小命令
ifconfig 网卡名 txqueuelen 数值
ifconfig eth0 txqueuelen 2000
默认是1000,要是缓冲区过小,有时候会出现丢包现象,据时查看 RX dropped 指数。
MTU调整命令
ifconfig 网卡名 MTU 数值
ifconfig eth0 MTU 1500
ping 检测 MTU
ping 192.168.1.1 -M do -s 8192
-M do:禁止分片, want:当包过大时分片, dont:不设置分片标志DF flag
-s 每次ping发送的数据字节数, 默认56+28(ICMP)=84字节. 头+内容不能大于65535, 所以最大值为linux:65507,windows:65500
当数据包大于本机网卡MTU时, 会报ping: local error: Message too long, mtu=xxx
当数据包大于外部网络以及对方网卡MTU时, 数据包被丢弃, ping无返回
二、网卡名称字符含义
1、前2个字符的含义
en 以太网 Ethernet
wl 无线局域网 WLAN
ww 无线广域网 WWAN
2、第3个字符根据设备类型选择
o on-board device index number
s hotplug slot index number
x MAC address
ps PCI geographical location
ps USB port number chain
txqueuelen过小导致溢出为什么是看RX dropped 指数而不是tx dropped?
ifconfig 报错里tx dropped报错很少的。