1. ifconfig
ifconfig主要是能手动启动、观察和修改网络接口的相关参数,能修改的参数非常多,包括IP参数及MTU等都能修改,他的语法如下:
[root@linux ~]# ifconfig {interface} {up|down}
一 般来说,直接输入ifconfig就会列出目前已被启动的卡,不论这个卡是否有设置IP,都会被显示出来。而如果是输入ifconfig eth0,则会显示出这个接口的相关数据,而不管该接口是否启动。所以,如果你想要知道某个网卡的Hardware Address,直接输入“ifconfig"网络接口代号"”即可。至于上述代码中出现的各项数据是这样的(数据排列由上而下、由左而右)。
? eth0:网卡的代号,也有lo这个loopback。
? HWaddr:网卡的硬件地址,习惯称为MAC。
? inet addr:IPv4的IP地址,后续的Bcase、Mask分别代表的是Broadcast和Netmask。
? inet6 addr:是IPv6的版本的IP,我们没有使用,所以略过。
? RX:那一行代表的是网络由启动到目前为止的数据包接收情况,packets代表数据包数、errors代表数据包发生错误的数量、dropped代表数据包由于有问题而遭丢弃的数量等。
? TX:和RX相反,为网络由启动到目前为止的传送情况。
? collisions:代表数据包碰撞的情况,如果发生太多次,表示你的网络状况不太好。
? txqueuelen:代表用来传输数据的缓冲区的储存长度。
? RX Bytes、TX Bytes:总传送、接收的字节总量。
? Interrupt、Memory:网卡硬件的数据,IRQ岔断和内存地址。
通过观察上述的资料,大致上能了解到你的网络情况,尤其是RX、TX内的error数量,及是否发生严重的collision情况,都是需要注意的。
范例二:暂时修改网络接口
[root@linux ~]# ifconfig eth0 192.168.100.100
# 如果不加所有其他参数,则系统会依照该 IP 所在的 class 范围,
# 自动地计算出 netmask 及 network, broadcast 等 IP 参数
[root@linux ~]# ifconfig eth0 192.168.100.100 netmask 255.255.255.128 \
> mtu 8000
# 设置网络接口,同时设置 MTU 的数值
[root@linux ~]# ifconfig eth0 MTU 9000
# 仅修改该接口的 MTU 数值,其他的保持不动
[root@linux ~]# ifconfig eth0:0 192.168.50.50
# 仔细看那个接口, eth0:0 。那就是在该网络接口上,再仿真一个网络接口,
# 亦即是在一个网卡上面设置多个 IP 的意思啦