ip

ip 是一个用来查询或者维护 路由 (Routing )、网络设备 ( Device )、 策略路由 ( Policy Routing )以及 隧道 ( Tunnel )的网络工具。

本文提供一些用法实例,详细文档请查看手册: ip(8) - Linux manual page ,或者命令行下运行 man 命令:

  1. fasion@ubuntu:~/lnp$ man ip

网络设备

ip link 命令用于查询或者设置网络设备。

查看网卡信息

  1. fasion@ubuntu:~$ ip link show enp0s8
  2. 3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
  3. link/ether 08:00:27:0e:18:e5 brd ff:ff:ff:ff:ff:ff

启用禁用

  1. $ ip link set enp0s8 up
  1. $ ip link set enp0s8 down

网卡混杂模式

正常模式下,网卡将过滤目的 MAC地址 不是自己的数据包。在某些场景,比如网络嗅探,我们需要抓取并分析其他网络数据包。这时,可以为网卡开启 混杂模式 。该模式开启后后,网卡将接受到达接口的所有数据包,不管 MAC地址 是啥。

运行以下命令,为网卡 enp0s8 开启混杂模式:

  1. fasion@ubuntu:~$ sudo ip link set enp0s8 promisc on

操作完毕后,再次查询网卡状态,将看到 PROMISC 标识:

  1. fasion@ubuntu:~$ ip link show enp0s8
  2. 3: enp0s8: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
  3. link/ether 08:00:27:0e:18:e5 brd ff:ff:ff:ff:ff:ff

地址

  1. fasion@ubuntu:~/lnp$ ip addr
  2. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
  3. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  4. inet 127.0.0.1/8 scope host lo
  5. valid_lft forever preferred_lft forever
  6. inet6 ::1/128 scope host
  7. valid_lft forever preferred_lft forever
  8. 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
  9. link/ether 08:00:27:4a:14:df brd ff:ff:ff:ff:ff:ff
  10. inet 10.0.2.15/24 brd 10.0.2.255 scope global enp0s3
  11. valid_lft forever preferred_lft forever
  12. inet6 fe80::a00:27ff:fe4a:14df/64 scope link
  13. valid_lft forever preferred_lft forever
  14. 3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
  15. link/ether 08:00:27:c8:04:83 brd ff:ff:ff:ff:ff:ff
  16. inet 192.168.56.10/24 brd 192.168.56.255 scope global enp0s8
  17. valid_lft forever preferred_lft forever
  18. inet6 fe80::a00:27ff:fec8:483/64 scope link
  19. valid_lft forever preferred_lft forever
  1. $ ip addr add 192.168.56.2/24 dev enp0s8

下一步

订阅更新,获取更多学习资料,请关注我们的 微信公众号

../_images/wechat-mp-qrcode.png小菜学编程

参考文献