Linux中网络管理命令ipconfig与route的基本使用教程

ifconfig
ifconfig 是一个用来查看、配置、启用或禁用网络接口的工具,这个工具极为常用的。可以用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。也可以把 它写入一个文件中(比如/etc/rc.d/rc.local),这样系统引导后,会读取这个文件,为网卡设置IP地址

语  法:ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址]

参数:

up 启动指定网络设备/网卡
down 关闭指定网络设备/网卡
-arp 设置指定网卡是否支持ARP协议
-promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包
-allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包
-a 显示全部接口信息
-s 显示摘要信息(类似于 netstat -i)
add 给指定网卡配置IPv6地址
del 删除指定网卡的IPv6地址
<硬件地址> 配置网卡最大的传输单元
mtu<字节数> 设置网卡的最大传输单元 (bytes)
netmask<子网掩码> 设置网卡的子网掩码
tunel 建立隧道
dstaddr 设定一个远端地址,建立点对点通信
-broadcast<地址> 为指定网卡设置广播协议
-pointtopoint<地址> 为网卡设置点对点通讯协议
multicast 为网卡设置组播标志
为网卡设置IPv4地址
txqueuelen<长度> 为网卡设置传输列队的长度

例:

复制代码
代码如下:

[root@localhost~]#ifconfig#处于激活状态的网络接口
[root@localhost~]#ifconfig-a#所有配置的网络接口,不论其是否激活
[root@localhost~]#ifconfig eth0#显示eth0的网卡信息
[root@localhost~]#ifconfig eth0 down#关闭eth0网卡
[root@localhost~]#ifconfig eth0 up#开启eth0网卡
[root@localhost~]#ifconfig eth0 add 33ffe:3240:800:1005::2/64#为网卡添加IPv6地址
[root@localhost~]#ifconfig eth0 del 33ffe:3240:800:1005::2/64#为网卡删除IPv6地址
[root@localhost~]#ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE#修改MAC地址
[root@localhost~]#ifconfig eth0 192.168.1.56#给eth0网卡配置IP地址
[root@localhost~]#ifconfig eth0 192.168.1.56 netmask 255.255.255.0#给eth0网卡配置IP地址,并加上子掩码
[root@localhost~]#ifconfig eth0 192.168.1.56 netmask 255.255.255.0 broadcast 192.168.1.255#给eth0网卡配置IP地址,加上子掩码,加上个广播地址
[root@localhost~]#ifconfig eth0 mtu 1500#设置能通过的最大数据包大小为1500 bytes
[root@localhost~]#ifconfig eth0 arp#开启arp功能
[root@localhost~]#ifconfig eth0-arp#关闭arp功能

route
route程序对内核的IP选路表进行操作。它主要用于通过已用ifconfig(8)程序配置好的接口来指定的主机或网络设置静态路由。

选项 OPTIONS

-v
    选用细节操作模式
-A family
    用指定的地址族(如`inet',`inet6')。
-n
    以数字形式代替解释主机名形式来显示地址。此项对试图检测对域名服务器进行路由发生故障的原因非常有用。
-e
    用netstat(8)的格式来显示选路表。-ee将产生包括选路表所有参数在内的大量信息。
-net
    路由目标为网络。
-host
    路由目标为主机。
-F
    显示内核的FIB选路表。其格式可以用-e 和 -ee选项改变。
-C
    显示内核的路由缓存。
del
    删除一条路由。
add
    添加一条路由。
target
    指定目标网络或主机。可以用点分十进制形式的IP地址或主机/网络名。
netmask Nm
    为添加的路由指定网络掩码。
gw Gw
    为发往目标网络/主机的任何分组指定网关。注意:指定的网关首先必须是可达的。也就是说必须为该网关预先指定一条静态路由。如果你为本地接口之一指定这个网关地址的话,那么此网关地址将用于决定此接口上的分组将如何进行路由。这是BSD风格所兼容的。
metric M
    把选路表中的路由值字段(由选路进程使用)设为M。
mss M
    把基于此路由之上的连接的TCP最大报文段长度设为M字节。这通常只用于优化选路设置。默认值为536。
window W
    把基于此路由之上的连接的TCP窗口长度设为W字节。这通常只用于AX.25网络和不能处理背对背形式的帧的设备。
irtt I
    把基于此路由之上的TCP连接的初始往返时间设为I毫秒(1-12000)。这通常也只用于AX.25网络。如果省略此选项,则使用RFC1122的缺省值300ms。
reject
    设置一条阻塞路由以使一条路由查找失败。这用于在使用缺省路由前先屏蔽掉一些网络。但这并不起到防火墙的作用。
mod, dyn, reinstate
    设置一条动态的或更改过的路由。这些标志通常只由选路进程来设置。这只用于诊断目的,
dev If
    强制使路由与指定的设备关联,因为否则内核会自己来试图检测相应的设备(通常检查已存在的路由和加入路由的设备的规格)。在多数正常的网络上无需使用。
    如果dev If是命令行上最后一个指定的选项,那么可以省略关键字dev,因为它是缺省值。否则路由修改对象(metric - netmask- gw - dev)无关紧要。

例:

复制代码
代码如下:

[root@linux ~]# route #显示当前路由
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 * 255.255.255.0 U 0 0 0 eth0
default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
[root@linux ~]# route del default gw 192.168.0.1 #删除默认网关
[root@linux ~]# route add default gw 192.168.0.1 #添加默认网关
[root@linux ~]# route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0 #增加一条路由
[root@linux ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 * 255.255.255.0 U 0 0 0 eth0
224.0.0.0 * 240.0.0.0 U 0 0 0 eth0
default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
[root@linux ~]# route add -net 224.0.0.0 netmask 240.0.0.0 reject #屏蔽一条路由
[root@linux ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 * 255.255.255.0 U 0 0 0 eth0
224.0.0.0 * 240.0.0.0 U 0 0 0 eth0
default 192.168.0.1 0.0.0.0 UG 0 0 0 eth0
[root@linux ~]# route add -host 192.168.0.2 gw 192.168.0.1 #所有去往192.168.0.2主机的数据包发往网关地址192.168.0.1