ip route 命令详解

linux的ip命令和ifconfig相似,但前者功能更强大,并旨在取代后者。使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务。ifconfig是net-tools中已被废弃使用的一个命令,许多年前就已经没有维护了。iproute2套件里提供了许多加强功能的命令,ip命令便是其中之一。linux

Net tools vs Iproute2

Net tools vs Iproute2git

要安装ip,请点击这里下载iproute2套装工具 。不过,大多数Linux发行版已经预装了iproute2工具。网络

你也可使用git命令来下载最新源代码来编译:工具

 
  1. git clone https://kernel.googlesource.com/pub/scm/linux/kernel/git/shemminger/iproute2.git

iproute2 git clone

iproute2 git clonegoogle

设置和删除Ip地址

要给你的机器设置一个IP地址,可使用下列ip命令:spa

 
  1. sudo ip addr add 192.168.0.193/24 dev wlan0

请注意IP地址要有一个后缀,好比/24。这种用法用于在无类域内路由选择(CIDR)中来显示所用的子网掩码。在这个例子中,子网掩码是255.255.255.0。code

在你按照上述方式设置好IP地址后,须要查看是否已经生效。对象

 
  1. ip addr show wlan0

set ip address

set ip address接口

你也可使用相同的方式来删除IP地址,只需用del代替add。ip

 
  1. sudo ip addr del 192.168.0.193/24 dev wlan0

delete ip address

delete ip address

列出路由表条目

ip命令的路由对象的参数还能够帮助你查看网络中的路由数据,并设置你的路由表。第一个条目是默认的路由条目,你能够随意改动它。

在这个例子中,有几个路由条目。这个结果显示有几个设备经过不一样的网络接口链接起来。它们包括WIFI、以太网和一个点对点链接。

 
  1. ip route show

ip route show

ip route show

假设如今你有一个IP地址,你须要知道路由包从哪里来。可使用下面的路由选项(译注:列出了路由所使用的接口等):

 
  1. ip route get 10.42.0.47

ip route get

ip route get

更改默认路由

要更改默认路由,使用下面ip命令:

 
  1. sudo ip route add default via 192.168.0.196

default route

default route

显示网络统计数据

使用ip命令还能够显示不一样网络接口的统计数据。

ip statistics all interfaces

ip statistics all interfaces

当你须要获取一个特定网络接口的信息时,在网络接口名字后面添加选项ls便可。使用多个选项-s会给你这个特定接口更详细的信息。特别是在排除网络链接故障时,这会很是有用。

 
  1. ip --link ls p2p1

ip link statistics

ip link statistics

ARP条目

地址解析协议(ARP)用于将一个IP地址转换成它对应的物理地址,也就是一般所说的MAC地址。使用ip命令的neigh或者neighbour选项,你能够查看接入你所在的局域网的设备的MAC地址。

 
  1. ip neighbour

ip neighbour

ip neighbour

监控netlink消息

也可使用ip命令查看netlink消息。monitor选项容许你查看网络设备的状态。好比,所在局域网的一台电脑根据它的状态能够被分类成REACHABLE或者STALE。使用下面的命令:

 
  1. ip monitor all

ip monitor all

ip monitor all

激活和中止网络接口

你可使用ip命令的up和down选项来激某个特定的接口,就像ifconfig的用法同样。

在这个例子中,当ppp0接口被激活和在它被中止和再次激活以后,你能够看到相应的路由表条目。这个接口多是wlan0或者eth0。将ppp0更改成你可用的任意接口便可。

 
  1. sudo ip link set ppp0 down
  2.  
  3. sudo ip link set ppp0 up

ip link set up and down

ip link set up and down

获取帮助

当你陷入困境,不知道某一个特定的选项怎么用的时候,你可使用help选项。man页面并不会提供许多关于如何使用ip选项的信息,所以这里就是获取帮助的地方。

好比,想知道关于route选项更多的信息:

 
  1. ip route help

ip route help

ip route help

小结

对于网络管理员们和全部的Linux使用者们,ip命令是必备工具。是时候抛弃ifconfig命令了,特别是当你写脚本时。

相关文章
相关标签/搜索