# 在这个地方如果你随便设置后,记得使用下面的命令重新设置你的网络 # /etc/init.d/network restart
如果是要进行路由的删除与增加,那就可以参考上面的例子了,其实,使用man route里面的信息就很丰富了。仔细查阅一下。你只要记得,当出现“SIOCADDRT: Network is unreachable”这个错误时,肯定是由于gw后面接的IP无法直接与你的网段沟通(Gateway并不在你的网段内),所以,赶紧检查一下输入的信息是否正确。 ip
这里的ip是个命令,不是那个TCP/IP的IP。这个ip命令的功能可多了。基本上,它就是集合了ifconfig与route这两个命令了,不过ip可以实现的功能却又多得多,真是个相当厉害的命令。如果你有兴趣的话,请自行vi /sbin/ifup,就知道整个ifup就是利用ip这个命令来实现的。好了,如何使用呢?让我们来看看。
[root@linux ~]# ip [option] [操作] [命令] 参数: Option,设置的参数,主要有: -s,显示出该设备的统计数据(statistics),例如总接受数据包数等; 操作,亦即是可以针对哪些网络参数进行操作,包括有: Link,关于设备(device) 的相关设置,包括MTU、MAC 地址等等 addr/address,关于额外的 IP 协议,例如多 IP 的实现等等; route,与路由有关的相关设置 由上面的语法我们可以知道,ip除了可以设置一些基本的网络参数之外,还能够进行额外的IP协议,包括多IP的实现,真是太完美了。下面我们就分3个部分(link、addr、route)来介绍这个ip命令吧。 1. 关于设备接口(device)的相关设置:ip link
ip link可以设置与设备(device)有关的相关设置,包括MTU以及该网络接口的MAC等,当然也可以启动(up)或关闭(down)某个网络接口了。整个语法是这样的:
[root@linux ~]# ip [-s] link show <== 单纯的查阅该设备相关的信息 [root@linux ~]# ip link set [device] [操作与参数] 参数: Show,仅显示出这个设备的相关内容,如果加上 -s 会显示更多统计数据 Set,可以开始设置项目, device 指的是 eth0、eth1 等等接口代号 操作与参数,包括有下面的这些操作 up|down,启动 (up) 或关闭 (down) 某个接口,其他参数使用默认的以太网 Address,如果这个设备可以更改 MAC 的话,用这个参数修改 Name,给予这个设备一个特殊的名字 Mtu,就是最大传输单元 范例一:显示出所有的接口信息 [root@linux ~]# ip link show 1: lo: mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:50:fc:22:9a:cb brd ff:ff:ff:ff:ff:ff 3: sit0: mtu 1480 qdisc noop link/sit 0.0.0.0 brd 0.0.0.0 [root@linux ~]# ip -s link show eth0 2: eth0: mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:50:fc:22:9a:cb brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 484011792 2247372 0 0 0 0 TX: bytes packets errors dropped carrier collsns 2914104290 2867753 0 0 0 0 使用ip link show可以显示出整个设备接口的硬件相关信息,如上所示,包括网卡地址(MAC)、MTU等,比较有趣的应该是那个sit0的接口了,那个sit0的接口是用在IPv4及IPv6的数据包转换上的,对于我们仅使用IPv4的网络是没有作用的。lo及sit0都是主机内部所自行设置的。而如果加上 -s的参数后,则这个网卡的相关统计信息就会被列出来,包括接收(RX)及传送(TX)的数据包数量等,详细的内容与ifconfig输出的结果是相同的。
范例二:启动、关闭与设置设备的相关信息 [root@linux ~]# ip link set eth0 up # 启动 eth0 这个设备接口。 [root@linux ~]# ip link set eth0 down # 就关闭啊。简单得要命 [root@linux ~]# ip link set eth0 mtu 1000 # 更改 MTU 的值,实现 1000 bytes,单位就是 bytes 使用ifconfig也可以更新网卡的MTU,没什么不一样的地方,不过,如果是要更改网卡代号、MAC地址的信息的话,那可就得使用ip了。不过,设置前得要先关闭该网卡,否则会不成功。如下所示:
范例三:修改网卡代号、MAC 等参数 [root@linux ~]# ip link set eth0 name vbird SIOCSIFNAME: Device or resource busy # 因为该设备目前是启动的,所以不能这样设置。你应该这样做: [root@linux ~]# ip link set eth0 down <==关闭接口 [root@linux ~]# ip link set eth0 name vbird <==重新设置 [root@linux ~]# ip link show <==观察一下 2. vbird: mtu 900 qdisc pfifo_fast qlen 1000 link/ehter 00:40:d0:13:c3:46 brd ff:ff:ff:ff:ff:ff # 怕了吧?连网卡代号都可以改变。不过,玩玩后记得改回来 # 因为我们的 ifcfg-eth0 还是使用原本的设备代号。避免有问题,要改回来 [root@linux ~]# ip link set vbird name eth0 <==接口改回来 [root@linux ~]# ip link set eth0 address aa:aa:aa:aa:aa:aa [root@linux ~]# ip link show eth0 # 如果你的网卡支持硬件地址 (MAC) 可以更改的话 # 那么上面这个操作就可以更改你的网卡地址了。厉害吧 # 不过,还是那句老话,测试完之后请立刻改回来 在这个设备的硬件相关信息设置上面,包括MTU、MAC以及传输的模式等,都可以在这里设置。有趣的是那个address的项目后面接的可是硬件地址(MAC)而不是IP。很容易搞错。切记切记。更多的硬件参数可以使用man ip查阅一下与ip link有关的设置。
2. 关于额外的IP相关设置:ip address
如果说ip link是与OSI七层协议的第二层数据链路层有关的话,那么IP address(IP addr)就是与第三层网络层有关的参数了。主要是在设置与IP有关的各项参数,包括netmask、broadcast等。
[root@linux ~]# ip address show <==就是查阅 IP 参数 [root@linux ~]# ip address [add|del] [IP参数] [dev 设备名] [相关参数] 参数: Show,单纯的显示出接口的 IP 信息 add|del,进行相关参数的增加 (add) 或删除 (del) 设置,主要有: IP 参数,主要就是网段的设置,例如 192.168.100.100/24 之类的设置
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Linux 网络命令 - 图文(3)在线全文阅读。
相关推荐: