Linux命令--ip

一、 简介

  ip命令用来显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者。使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务。ifconfig是net-tools中已被废弃使用的一个命令,许多年前就已经没有维护了。iproute2套件里提供了许多增强功能的命令,ip命令即是其中之一。

二、 选项参数

命令格式为:ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]]

1、选项[OPTIONS]

•-V/--Version:显示指令版本信息;
•-s/-stats -statistics:输出更详细的信息;
•-f/-family:强制使用指定的协议族;
•-4/-family inet:指定使用的网络层协议是IPv4协议;
•-6/-family inet6:指定使用的网络层协议是IPv6协议;
•-0/-family link(零):输出信息每条记录输出一行,即使内容较多也不换行显示;
•-o,-oneline:对每行记录都使用单行输出,回行用字符代替。如果你需要使用wc、grep等工具处理ip的输出,会用到这个选项。
•-r/-resolve:显示主机时,不使用IP地址,而使用主机的域名。

2、目标[OBJECT]:是你要管理或者获取信息的对象。ip认识的对象包括:

•link:网络设备
•address:一个设备的协议(IP或者IPV6)地址
•neighbour:ARP或者NDISC缓冲区条目
•route:路由表条目
•rule:路由策略数据库中的规则
•maddress:多播地址
•mroute:多播路由缓冲区条目
•tunnel IP:上的通道
另外,所有的对象名都可以简写,例如:address可以简写为addr,甚至是a。

3、COMMAND[ARGUMENTS] 设置针对指定对象执行的操作

一般情况下,ip支持对象的增加(add)、删除(delete)和展示(show或者list)。

4、ARGUMENTS 是命令的一些参数,它们倚赖于对象和命令。

ip支持两种类型的参数:flag和parameter。flag由一个关键词组成;parameter由一个关键词加一个数值组成。

三、命令实例

1、显示网络接口及其状态
[root@cxm ~]# ip link
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0:  mtu 1450 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether fa:16:3e:cd:7e:37 brd ff:ff:ff:ff:ff:ff
2、显示较为详细的接口状态
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    RX: bytes  packets  errors  dropped overrun mcast   
    3638       36       0       0       0       0       
    TX: bytes  packets  errors  dropped carrier collsns 
    3638       36       0       0       0       0       
2: eth0:  mtu 1450 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether fa:16:3e:cd:7e:37 brd ff:ff:ff:ff:ff:ff
    RX: bytes  packets  errors  dropped overrun mcast   
    1700747394 3131546  0       0       0       0       
    TX: bytes  packets  errors  dropped carrier collsns 
    250712570  2797300  0       0       0       0
3、显示核心路由表
172.19.20.0/24 dev bond0  proto kernel  scope link  src 172.19.20.100 
192.168.202.0/24 dev eth1  proto kernel  scope link  src 192.168.202.20 
169.254.0.0/16 dev eth1  scope link  metric 1003 
169.254.0.0/16 dev bond0  scope link  metric 1006 
default via 172.19.20.1 dev bond0
4、显示邻居表
[root@localhost ~]# ip route list
172.19.20.0/24 dev bond0  proto kernel  scope link  src 172.19.20.100 
192.168.202.0/24 dev eth1  proto kernel  scope link  src 192.168.202.20 
169.254.0.0/16 dev eth1  scope link  metric 1003 
169.254.0.0/16 dev bond0  scope link  metric 1006 
default via 172.19.20.1 dev bond0
5、查看网卡信息
[root@cxm ~]# ip a
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0:  mtu 1450 qdisc pfifo_fast state UP qlen 1000
    link/ether fa:16:3e:cd:7e:37 brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.3/20 brd 192.168.15.255 scope global dynamic eth0
       valid_lft 48797sec preferred_lft 48797sec
    inet6 fe80::f816:3eff:fecd:7e37/64 scope link 
       valid_lft forever preferred_lft forever
6、停止、启动、重启网卡
[root@cxm ~]# ip link set dev eth0 up
[root@cxm ~]# ip link set dev eth0 down (注意生产环境需要谨慎操作)
[root@cxm ~]# ip link set dev eth0 restart`
7、设置和删除IP
[root@Gin scripts]# ip addr add 192.168.17.30/24 dev eth0
[root@Gin scripts]# ip addr
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0:  mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:0c:29:84:0c:21 brd ff:ff:ff:ff:ff:ff
    inet 192.168.17.129/24 brd 192.168.17.255 scope global eth0
    inet 192.168.17.30/24 scope global secondary eth0
    inet6 fe80::20c:29ff:fe84:c21/64 scope link
       valid_lft forever preferred_lft forever
[root@Gin scripts]# ip addr del 192.168.17.30/24 dev eth0
[root@Gin scripts]# ip addr
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0:  mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 00:0c:29:84:0c:21 brd ff:ff:ff:ff:ff:ff
    inet 192.168.17.129/24 brd 192.168.17.255 scope global eth0
    inet6 fe80::20c:29ff:fe84:c21/64 scope link
       valid_lft forever preferred_lft forever

你可能感兴趣的:(Linux命令--ip)