如何在 Linux 中使用 IP 命令及示例?


IP 命令是 Linux 中强大的网络配置工具。它用于显示、操作路由、设备、策略路由和隧道。IP 命令是 iproute2 软件包的一部分,该软件包在大多数 Linux 发行版中默认安装。本文将指导您了解 IP 命令的基础知识,并提供示例以帮助您理解其用法。

显示 IP 地址

要显示所有网络接口的 IP 地址,请使用以下命令:

示例

ip addr show

输出

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
   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
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
   link/ether 08:00:27:15:64:b3 brd ff:ff:ff:ff:ff:ff
   inet 192.168.1.10/24 brd 192.168.1.255 scope global dynamic eth0
      valid_lft 86378sec preferred_lft 86378sec

添加 IP 地址

要向网络接口添加 IP 地址,请使用以下命令:

sudo ip addr add 192.168.1.100/24 dev eth0

此命令将 IP 地址 192.168.1.100 添加到网络接口 eth0。IP 地址末尾的 /24 是子网掩码。

删除 IP 地址

要从网络接口删除 IP 地址,请使用以下命令:

sudo ip addr del 192.168.1.100/24 dev eth0

此命令从网络接口 eth0 删除 IP 地址 192.168.1.100。

显示路由表

要显示路由表,请使用以下命令:

示例

ip route show

输出

default via 192.168.1.1 dev eth0 proto static 
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.10

添加路由

要添加路由,请使用以下命令:

sudo ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0

此命令通过网络接口 eth0 上的网关 192.168.1.1 添加到网络 192.168.2.0/24 的路由。

删除路由

要删除路由,请使用以下命令:

sudo ip route del 192.168.2.0/24

此命令删除到网络 192.168.2.0/24 的路由。

显示网络接口的统计信息

ip -s link 命令显示网络接口的统计信息:

示例

ip −s link

输出

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
   link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
   RX: bytes  packets  errors  dropped overrun mcast   
   166114     1982     0       0       0       0      
   TX: bytes  packets  errors  dropped carrier collsns 
   166114     1982     0       0       0       0 

显示邻居对象

ip neigh 命令显示邻居对象;本质上,它显示 ARP 表:

示例

ip neigh

输出

192.168.1.1 dev eth0 lladdr 00:14:bf:b1:cb:31 REACHABLE

添加邻居

要添加邻居,请使用以下命令:

sudo ip neigh add 192.168.1.101 lladdr 1:2:3:4:5:6 dev eth0

此命令将具有 IP 地址 192.168.1.101 和 MAC 地址 1:2:3:4:5:6 的邻居添加到网络接口 eth0。

删除邻居

要删除邻居,请使用以下命令:

sudo ip neigh del 192.168.1.101 dev eth0

此命令从网络接口 eth0 删除 IP 地址为 192.168.1.101 的邻居。

显示多播信息

ip maddr 命令显示多播地址:

示例

ip maddr

输出

1:    lo
      inet  224.0.0.1
      inet6 ff02::1
2:    eth0
      inet  224.0.0.251
      inet  224.0.0.1
      inet6 ff02::1:ff00:1
      inet6 ff02::1

显示网络接口

ip link show 命令显示有关网络接口的信息:

示例

ip link show

输出

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:15:64:b3 brd ff:ff:ff:ff:ff:ff

更改网络接口的状态

要更改网络接口的状态,请使用以下命令:

sudo ip link set eth0 down
sudo ip link set eth0 up

第一个命令使网络接口 eth0 停止运行,第二个命令将其恢复运行。

更改网络接口的 MTU

要更改网络接口的最大传输单元 (MTU),请使用以下命令:

sudo ip link set eth0 mtu 1400

此命令将网络接口 eth0 的 MTU 设置为 1400。

显示 TCP 和 UDP 套接字

ip −s −s −t tcp show 和 ip −s −s −t udp show 命令分别显示 TCP 和 UDP 套接字:

示例

ip −s −s −t tcp show
ip −s −s −t udp show

输出

输出将类似于以下内容:

TCP: inuse 23 orphan 0 tw 10 alloc 25 mem 6
TCP: inuse 23 orphan 0 tw 10 alloc 25 mem 6

显示网络命名空间

ip netns 命令用于管理网络命名空间。要显示网络命名空间列表,请使用以下命令:

ip netns

如果您尚未创建任何网络命名空间,则此命令将不会返回任何输出。

添加网络命名空间

要添加网络命名空间,请使用以下命令:

sudo ip netns add mynamespace

此命令创建一个名为“mynamespace”的新网络命名空间。

删除网络命名空间

要删除网络命名空间,请使用以下命令:

sudo ip netns del mynamespace

此命令删除名为“mynamespace”的网络命名空间。

显示网络命名空间的 IP 地址

要显示网络命名空间的 IP 地址,请使用以下命令:

sudo ip netns exec mynamespace ip addr

此命令显示名为“mynamespace”的网络命名空间的 IP 地址。

显示网络命名空间的路由表

要显示网络命名空间的路由表,请使用以下命令:

sudo ip netns exec mynamespace ip route

保存到 grepper

此命令显示名为“mynamespace”的网络命名空间的路由表。

这些只是 Linux 中 ip 命令提供的众多命令和选项中的一些示例。与往常一样,您可以参考手册页 (man ip) 以获取更详细的信息。

结论

Linux 中的 IP 命令是一个用于管理网络接口和路由的多功能工具。本文提供的示例仅是基础知识。IP 命令还有更多选项和功能。有关更详细的信息,您始终可以通过在终端中键入 man ip 来参考手册页。

请记住,使用 IP 命令进行的更改在重新启动后不会持续存在。要进行持久更改,您需要编辑网络配置文件,这些文件因 Linux 发行版和网络管理器而异。在更改网络配置时务必谨慎,因为错误的设置可能会中断网络连接。

更新于: 2023-07-13

276 次浏览

开启您的 职业生涯

通过完成课程获得认证

立即开始
广告
© . All rights reserved.