「成都联想代理」50个常用的Linux服务器系统IP设置命令

成都联想服务器总代理 155 2023-05-26 https://www.lenovohs.com/ 成都联想服务器总代理

长期以来,ifconfig命令一直是Linux服务器中处理网络参数的首选解决方案。成都联想代理然而,ifconfig已经过时了一段时间,Unix社区正在采用Linux IP命令作为这个强大工具的替代品。ip命令允许用户和网络管理员非常容易地配置他们的IP地址、路由策略和网络接口。就性能和功能而言,这是对ifconfig的值得升级。所以,如果你还在使用ifconfig,那么是时候尝试一下ip实用程序了。

成都联想服务器

用于网络管理的Linux IP命令

ip实用程序在ifconfig上提供了其他一些功能。通常,您将使用ifconfig来操纵网络接口和IP地址。但是,ip命令允许我们甚至处理路由表和ARP表。了解了我们的示例后,您将学习如何使用这些实用命令。

Linux IP命令的基本用法

ip [ OPTIONS ] OBJECT { COMMAND | help }

Linux服务器中的ip命令采用上述形式。在这里,对象可以是几件事情,包括网络接口,IP地址,路由规则,隧道和ARP表。可以使用长格式或缩写形式(例如或地址)来指定每个对象。

1、检查所有网络接口的IP地址和属性

您可以使用以下命令显示系统中所有可用接口的IP地址及其属性。该命令的输出与ifconfig的输出非常相似。

$ sudo ip addr show

您也可以将缩写形式a用于addr。它们是等效的,并显示相同的信息。

$ sudo ip a show

结果应包含所有网络接口的名称及其各自的IP地址。IP信息用术语inet表示。

2、检查特定设备的IP地址和属性

显示所选设备的IP信息也非常容易。只需使用dev选项,然后使用接口名称作为参数即可。

$ sudo ip a show dev wlp2s0

$ sudo ip addr show dev wlp2s0

这里wlp2s0是无线接口。用您要检查的接口名称替换它。例如,以太网接口通常通过eth0表示。但是,这些名称在系统之间可能很容易变化,因此请确保提供主机中存在的名称。

3、仅显示IPv4地址

上面的命令在IP地址旁边显示了很多有用的信息。但是,如果您仅对IP地址本身感兴趣,则可以忽略该额外信息。关闭以下命令,查看其工作原理。

$ sudo ip -4 addr

$ sudo ip -4 addr show

这些命令是等效的,但它们列出了具有活动IPv4地址的接口。但是,它们仍然提供许多额外的信息。您可以使用Linux grep命令来过滤此输出并仅显示IPv4地址。

$ sudo ip -4 addr show | grep -oE ([0-9]{1,3}.){3}[0-9]{1,3}

4、仅显示IPv6地址

我们还可以使用ip实用程序和Linux awk命令仅显示IPv6地址。我们也可以使用grep实用程序,但是它将需要更大的正则表达式模式。

$ sudo ip -6 addr show | awk /inet6/ {print $2}

当运行上述命令时,它将输出接口的所有IPv6地址。

5、添加一个IP地址

Linux IP命令使管理员可以轻松添加新IP地址。在下面的示例中,我们将说明如何向特定的网络设备添加IP地址。请仔细查看语法,以确保您了解正在发生的事情。

$ sudo ip addr add 192.168.1.1/24 dev eth0

此命令将带有网络掩码24的IP地址192.168.1.1添加到以太网接口eth0。只需替换接口名称即可反映其他设备中的更改。

6、添加广播地址

广播地址将网络数据包发送到连接到网络的每个设备。您可以使用以下简单的ip命令之一添加自定义广播地址。

$ sudo ip addr add brd 192.162.125.200 dev eth0

$ sudo ip addr add broadcast 192.162.125.200 dev eth0

现在,eth0接口的广播地址设置为192.162.125.200。但是,请记住,Linux服务器中的网络接口本身会获取广播信息。因此,仅应在自己设置网络时分配它。

7、删除IP地址

删除分配给特定网络的IP也非常容易。仔细查看下一个ip命令示例,以了解实际情况。

$ sudo ip addr del 192.168.1.1/24 dev eth0

该命令从以太网接口删除IP地址192.168.1.1/24。

8、刷新IP地址

您将需要多次使用以上命令,才能从不同接口删除所有IP地址。但是,如果您想重新开始,那么刷新IP地址可能是一个不错的开始。

$ sudo ip -s -s a f to 192.168.1.0/24

该命令将删除与网络192.168.1.0/24关联的所有IP地址。您也可以根据其标签刷新IP。

$ sudo ip -4 addr flush label eth*

此命令将刷新系统以太网接口的所有IPv4地址。

9、显示所有可用接口的信息

链接对象代表网络接口。您可以使用以下简单命令显示有关Linux服务器中所有网络接口的信息。

$ sudo ip link

$ sudo ip link show

两者都是等效的,并显示诸如MAC,接口状态等信息。您可以将链接替换为l的缩写。您还可以使用ip命令的-d和-h选项以易于理解的格式获取更多详细信息。

$ sudo ip -d -h link show

10、显示特定设备的接口信息

像IP地址一样,我们也可以显示单个设备的接口信息。您将需要类似地使用dev选项,后跟设备名称,如以下示例所示。

$ sudo ip link show dev eth0

这对排除特定设备很有用,因为它忽略了不必要的信息。使用以下命令以易于阅读的格式获取其他信息。

$ sudo ip -d -h link show dev eth0

11、显示接口的统计数据

统计数据使识别和解决网络问题变得非常容易。您可以使用以下任何命令来轻松显示特定接口的统计信息。

$ sudo ip -s link show wlp2s0

$ sudo ip -stats link show wlp2s0

$ sudo ip -statistics link show wlp2s0

以上所有命令都是等效的。因此,您可以使用-s,-stats或-statistics中的任何一个。但是,您可以在命令中多次使用它们。这将提供其他统计信息。

$ sudo ip -s -stats -statistics link show wlp2s0

12、显示所有接口的统计数据

ip实用程序还允许网络管理员打印出系统中所有可用接口的统计数据。这与上面的命令非常相似。只需省略任何特定接口的名称,ip就会显示所有接口的统计信息。

$ sudo ip -s link show

$ sudo ip -stats link show

$ sudo ip -statistics link show

同样,我们也可以多次使用这些标志以获得更多信息。下面的命令演示了这一点。

$ sudo ip -s -stats -statistics link show

13、启用特定的网络接口

ip命令使将接口联机非常容易。因此,如果您仍在使用ifconfig命令执行此操作,请仔细检查以下示例。

$ sudo ip link set wlp2s0 up

此命令将在系统中启用无线接口wlp2s0。由于许多系统将此接口指定为wlan0,因此请确保根据系统使用适当的设备名称。

14、禁用特定的网络接口

通过使用ip子命令链接集,我们还可以非常轻松地禁用网络。以下示例演示了如何禁用我们在先前示例中刚刚启用的无线接口wlp2s0。

$ sudo ip link set wlp2s0 down

上面的命令将使wlp2s0接口脱机。如果要使用无线接口传输网络数据包,则需要再次启用它。

15、将自定义MTU分配给接口

MTU代表“ 最大传输单位”,并规定了特定网络接口可以发送的数据包的大小上限。您可以使用以下Linux ip命令为接口分配自定义MTU大小。

$ sudo ip link set wlp2s0 mtu 5000

此命令将无线接口wlp2s0的MTU设置为5000。您可以通过检查接口信息来确认更改。

16、使混合模式

混合模式允许接口将所有IP数据包发送到CPU,包括那些不打算到达系统的IP数据包。它通常用于故障排除和网络审核。快速浏览以下命令,以了解如何使用ip命令行工具执行此操作。

$ sudo ip link set wlp2s0 promisc on

当您运行上述命令时,它将打开无线接口的混合模式。您还可以为其他网络接口启用它,只要网络接口控制器支持它即可。

17、列出所有启用的接口

由于您经常使用具有多个接口的系统,因此您可能需要列出当前启用的设备。这将在网络故障排除和系统审核期间派上用场。

$ sudo ip link ls up

此命令将打印出Linux服务器中所有正在运行的网络接口以及它们的常规属性。使用ip命令的-d标志可获取有关每个接口的更多详细信息。

$ sudo ip -d link ls up

18、为接口分配自定义传输队列长度

您可以通过修改接口的传输队列长度来控制网络的带宽使用。传输队列长度是指设备驱动程序允许的最大数据包大小。

$ sudo ip link set txqueuelen 1500 dev wlp2s0

此命令将无线接口的传输队列长度设置为1500。我们使用link set子命令来分配此值。

19、为以太网接口启用Trailers

尾部封装使Linux内核可以最小化接收主机上的内存到内存复制操作,并减少数据包处理时间。仅以太网接口支持此功能。您可以使用以下Linux ip命令在系统上启用此功能。

$ sudo ip link set dev eth0 trailers on

此命令将为eth0设备启用trailers 支持。请注意,在启用此功能之前,我们是如何首先指定设备的。

20、禁用以太网接口的Trailers

使用ip实用程序来禁用trailers 封装也非常简单。只需将上述命令的on部分替换为off即可。

$ sudo ip link set dev eth0 trailers off

现在,eth0设备的trailers 功能将关闭。

21、更改MAC地址

如果要在Linux服务器中更改MAC地址,则可以使用ip实用程序轻松进行更改。首先,使用以下命令关闭接口。

$ sudo ip link set dev eth0 down

现在,您需要通过发出下一个命令来设置MAC地址。

$ sudo ip link set dev eth0 address 8e:a9:82:9d:6f:ac

该命令将eth0接口的MAC地址设置为8e:a9:82:9d:6f:ac。最后,使用以下命令使网络接口联机。

$ sudo ip link set dev eth0 up

22、重命名网络接口

您可以使用Linux ip命令轻松地重命名网络接口。以下命令演示了如何将eth0接口重命名为eth1。

$ sudo ip link set eth0 down

$ sudo ip link set eth0 name eth1

$ sudo ip link set eth1 up

我们需要先禁用接口,然后才能重命名它。您可以使用上述方法重命名系统中的任何网络接口。

23、展示广告网络隧道

网络隧道使我们的系统可以通过公共互联网发送敏感信息。您可以使用ip tunnel子命令打印活动隧道的列表。

$ sudo ip tunnel

$ sudo ip tunnel show

这两个命令都是等效的,并且将在执行时显示网络隧道列表。

24、显示IP路由表

每个启用IP的设备都使用某种路由表来评估将IP数据包重定向到何处。Linux ip命令允许管理员非常轻松地查看此信息。快速浏览以下命令以了解其工作原理。

$ sudo ip route

此命令将打印出内核中加载的所有路由信息。您还可以根据需要添加,删除或替换路由条目。

25、将条目添加到路由表

有时,管理员可能需要手动将条目添加到路由表中。route命令允许用户执行此操作,许多网络管理员仍在使用该命令。但是,您可以直接使用ip命令将条目添加到路由表中。以下命令以一个实际示例说明了这一点。

$ sudo ip route add default via 192.168.1.1 dev wlp2s0

此命令为以太网设备wlp2s0添加默认路由。IP地址192.168.1.1是网络的本地网关。因此,以上命令允许通过本地网关的所有地址到无线设备的路由。

26、添加子网的路由条目

下面的命令向我们展示了如何使用ip route命令向子网添加路由。为此,我们将需要使用网关,因此我们将使用默认网关192.168.1.1。

$ sudo ip route add 192.168.1.0/24 via 192.168.1.1

上面的命令将通过本地网关192.168.1.1在网络192.168.1.0/24上添加一条路由。如今,大多数消费者级路由器和调制解调器都使用此IP作为其网关。

27、添加特定设备的路由规则

将路由添加到特定网络设备始终可以访问的子网非常容易。下面的简单命令将针对无线接口wlp2s0进行说明。

$ sudo ip route add 192.168.1.0/24 dev wlp2s0

执行完以上命令后,192.168.1.0 / 24范围内的所有地址都可以自由到达wlp2s0接口。

28、从路由表中删除条目

如果要从路由表中删除特定条目,则可以使用ip实用程序的route delete子命令非常轻松地删除。以下命令向您展示了如何轻松地从Linux终端仿真器执行此操作。

$ sudo ip route delete 192.168.1.0/24 via 192.168.1.1

此命令将通过默认网关192.168.1.1删除网络192.168.1.0/24的路由。这是我们在前面的示例中创建的条目。

29、替换路由表中的条目

我们可以使用Linux ip命令的route replace子命令轻松替换路由表中的条目。以下示例将替换子网192.168.1.0/24到wlp2s0接口的所有已定义路由。

$ sudo ip route replace 192.168.1.0/24 dev wlp2s0

如果尚未定义,则此命令将创建路由。它提供了一种方便的方式来处理现有的路由规则。

30、显示地址采取的路线

管理员通常需要确定IP地址采用的路由。它有助于排除网络问题,并确保按预期方式传输数据包。以下示例向我们展示了如何使用ip实用程序有效地执行此操作。

$ sudo ip route get 192.168.1.5

此命令显示网络中IP地址192.168.1.5所采用的路径。使用以下命令获取统计信息概述。

$ sudo ip -s route get 192.168.1.5

31、添加持久性静态路由

到目前为止,我们已经了解了如何使用Linux ip命令添加或删除静态路由。但是,这些路由不是永久的,在系统重新启动后将丢失。您可以通过执行以下任务使更改永久生效。

$ sudo vim /etc/sysconfig/network-scripts/route-wlp2s0

192.168.1.0/24 via 192.168.1.1

附加上一行后,退出vim或Linux文本编辑器。现在,重新启动网络管理器。这将使指定的路由在RHEL或CentOS系统上永久存在。

$ sudo systemctl restart NetworkManager

现在,要在Debian或Ubuntu发行版上永久添加此路由,请设置以下内容。

$ sudo vim /etc/network/interfaces

up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1 dev wlp2s0

现在,您需要先降低界面,然后再升高界面以反映此更改。您可以使用以下命令进行操作。

$ sudo ip link set wlp2s0 down

$ sudo ip link set wlp2s0 up

32、显示多播IP地址

组播IP地址用于跨网络设备发送或接收组播消息。您可以使用以下简单命令来打印出系统中所有可用的多播IP地址的列表。

$ sudo ip maddr

$ sudo ip maddr show

这两个命令都是等效的,并显示给定网络的格式正确的多播地址列表。

33、显示特定设备的组播信息

上面的命令显示所有网络设备的多播信息。如果要对特定设备进行故障排除,则可以使用以下命令。

$ sudo ip maddr show dev eth0

在这里,我们使用dev选项来指定wlp2s0无线接口。现在,它将仅打印该特定设备的多播信息。用设备中的任何设备替换设备名称。

34、添加一个多播地址

使用ip命令添加多播地址非常容易。通过使用ip的maddr add子命令,我们可以轻松地做到这一点。快速浏览下图,以了解其在现实生活中的工作原理。

$ sudo ip maddr add 44:22:00:00:00:01 dev eth0

上面的命令为eth0网络设备添加了多播地址44:22:00:00:00:01。用适当的接口替换接口名称,并用所需的接口替换地址。

35、删除多播地址

我们也可以按照添加方式删除特定网络设备的多播地址。要从eth0接口删除多播地址44:22:00:00:00:01,请在Linux终端中使用以下命令。

$ sudo ip maddr del 44:22:00:00:00:01 dev eth0

因此,只需使用ip的maddr del子命令,我们就可以删除多播地址。确保指定正确的设备,否则可能会导致不必要的多播。

36、启用多播寻址

如果要为特定接口设置多播寻址模式,请使用以下简单命令。我们将使用ip实用程序的link set子命令来启用多播寻址。

$ sudo ip link set eth0 multicast on

现在,在以太网接口eth0上允许多播寻址。

37、禁用多播寻址

如果您是家庭用户,则可能要完全禁用多播寻址功能。幸运的是,禁用此功能与启用它一样容易。请仔细查看以下示例,以了解如何使用ip实用程序执行此操作。

$ sudo ip link set eth0 multicast off

因此,只需为接口使用多播关闭选项,就可以关闭此功能。

38、为接口启用所有多播

allmulticast模式允许接口直接接收所有组播数据包。您可以非常轻松地为特定的网络设备启用它。以下命令说明了以太网接口eth0的情况。

$ sudo ip link set eth0 allmulticast on

We4使用link set子命令选择了eth0接口,并使用on选项打开了allmulticast功能。

39、禁用接口的所有多播

您可以通过将on选项切换为off来完全禁用所有多播。以下命令在eth0接口上对此进行了演示。

$ sudo ip link set eth0 allmulticast off

现在,针对此特定的网络设备完全禁用了allmulticast。

40、显示ARP表

ip邻居表对象或ARP(地址解析协议)表包含每当发送网络数据包时IP地址及其各自的MAC地址之间的映射,系统首先在该表中查找以确定它是否已经知道该地址的MAC。

$ sudo ip neigh

运行此命令时,ip将在Linux终端仿真器中显示邻居对象或ARP表。它显示了活动网络设备的MAC地址以及其他有用的信息。

41、显示特定设备的ARP缓存

您可以通过在dev选项之后提供其名称来查找与单个网络设备关联的ARP条目。看下面的例子,看看它一般如何工作。

$ sudo ip neigh show dev wlp2s0

此命令将输出名为wlp2s0的无线网络接口的ARP条目。请注意,此无线接口的名称在您的计算机中可能有所不同,例如wlan0或其他名称。因此,请确保使用正确的名称,否则将无法获得所需的输出。

42、为设备添加ARP条目

如果要手动将条目添加到ARP,可以使用以下简单命令轻松地添加。您需要提供IP地址以及要设置的MAC。

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

在这里,我们将MAC地址1:2:3:4:5:6映射到IP地址192.168.1.1。我们还将网络接口指定为eth0。

43、删除设备的ARP条目

您也可以使用Linux ip命令轻松删除ARP条目。下面的示例演示如何删除在上面的示例中创建的ARP条目。

$ sudo ip neigh del 192.168.1.1 dev eth0

此命令将使eth0设备的ARP条目无效。如您所见,neigh del命令允许我们删除邻居表对象。

44、替换ARP表中的条目

管理员无需手动删除ARP条目并为特定设备创建一个新条目。他们可以使用ip实用程序的neigh replace子命令简单地用新条目替换旧条目。下面的命令说明了它是如何工作的。

$ sudo ip neigh replace 192.168.1.1 lladdr 6:5:4:3:2:1 dev eth0

此命令将使用给定的MAC地址替换IP地址192.168.1.1的ARP条目。如果此规则尚不存在,它将使用此映射创建一个新条目。

45、刷新ARP条目

Linux ip命令还允许我们刷新类似于IP地址的ARP条目。例如,以下命令将删除IP地址192.168.1.1的邻居表。

$ sudo ip -s -s n f 192.168.1.1

该命令与以下命令相同。在这里,我们使用的是冲洗子命令的长格式,而不是简短的命令。

$ sudo ip -s -s n flush 192.168.1.1

46、为IP输出着色

Linux ip命令提供了大量数据,因此,用户有时可能很难找到基本信息。幸运的是,您可以使用ip实用程序的-c选项为输出着色。

$ sudo ip -c -4 addr

$ sudo ip -c link

第一个命令将以不同的颜色显示IPv4地址以及接口名称。第二个命令将突出显示MAC地址和接口状态以及名称。

47、生成JSON输出

JSON或JavaScript Object Notation是一种数据表示格式,已被Web应用程序以及其他工具广泛使用。以这种格式存储的数据可以轻松地与许多服务互换。您可以使用以下命令将ip命令的结果生成为JSON数据。

$ sudo ip -j route

$ sudo ip -j link show docker0

只需在命令中添加-j选项,ip会将终端输出转换为JSON。

48、显示版本信息

如果要查看使用的ip实用程序版本,请使用以下命令。

$ ip -V

请注意,它是一个大写字母V,而不是许多Linux终端命令使用的小写字母v 。

49、显示帮助页面

ip的帮助页面提供了所有可能的命令行参数及其用法的摘要信息。您可以通过几种方式打印此信息。

$ ip help

$ ip --help

这些命令将打印标准帮助页面。但是,您也可以显示特定子命令的帮助页面,如以下示例所示。

$ ip link help

$ ip route help

第一个命令显示link子命令的帮助页面,第二个显示route子命令的帮助页面。

50、显示手册页

手册页或手册包含有关Linux IP命令的各种选项和语法的深入信息。您可以使用以下简单命令显示它。

$ man ip

这将打印ip实用程序的主要手册。您也可以在手册中查看特定条目。请仔细查看以下命令,以了解其工作原理。

$ man ip-address

$ man ip-link

第一个命令显示地址子命令的手册页,第二个命令显示链接子命令的手册页。

结束语

Linux ip命令在易于使用但实用的界面中打包了各种Linux网络命令。如果您习惯使用诸如ifconfig和route之类的旧版网络工具,那么现在是时候开始向ip实用程序过渡。

成都联想服务器代理


【公司名称】成都鸿盛广达科技有限公司

【代理级别】成都联想服务器总代理

【销售经理】成都鸿盛广达科技有限公司

【联系方式】座机:028-85952921 手机:13981931555

【公司地址】成都市武侯区人民南路四段一号时代数码广场A座17楼