收集云服务器优惠信息
记录云服务器使用心得

Linux系统中配置网络接口的15个有用“ifconfig”命令详解

ifconfig简称“接口配置”实用程序,用于Unix/Linux操作系统中的系统/网络管理,通过命令行界面或系统配置脚本来配置、管理和查询网络接口参数。“ ifconfig ”命令用于显示当前网络配置信息、设置网络接口的 IP 地址、网络掩码或广播地址、为网络接口创建别名、设置硬件地址以及启用或禁用网络接口。

在本文中,主要介绍15个有用的“ ifconfig ”命令及其实际示例,这可能对你在Linux系统中管理和配置网络接口非常有帮助。

注意在大多数现代Linux发行版中,网络命令ifconfig已被弃用并被ip命令取代。

ifconfig

1、列出Linux中的网络接口

不带参数的“ ifconfig ”命令将显示所有活动网络接口配置详细信息,包括为其分配的IP地址、网络掩码和其它相关信息。

ifconfig

示例输出:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 198.12.80.139 netmask 255.255.255.192 broadcast 198.12.80.191
inet6 fe80::216:3cff:fef5:533d prefixlen 64 scopeid 0x20<link>
ether 00:16:3c:f5:53:3d txqueuelen 1000 (Ethernet)
RX packets 254313424 bytes 25155528667 (23.4 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 13431622 bytes 10007990478 (9.3 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0


lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 97076 bytes 127641269 (121.7 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 97076 bytes 127641269 (121.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0


tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.1.1.1 P-t-P:10.1.1.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

2、显示所有网络接口信息

以下带有-a参数的ifconfig命令将显示服务器上所有活动或非活动网络接口的信息,它显示eth0、lo、sat0和tun0的结果:

# ifconfig -a

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 198.12.80.139 netmask 255.255.255.192 broadcast 198.12.80.191
inet6 fe80::216:3cff:fef5:533d prefixlen 64 scopeid 0x20<link>
ether 00:16:3c:f5:53:3d txqueuelen 1000 (Ethernet)
RX packets 254337649 bytes 25160807526 (23.4 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 13441187 bytes 10011928684 (9.3 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 97076 bytes 127641269 (121.7 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 97076 bytes 127641269 (121.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

sit0 Link encap:IPv6-in-IPv4
NOARP MTU:1480 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.1.1.1 P-t-P:10.1.1.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

3、查看特定接口的网络设置

使用接口名称 ( eth0 ) 作为“ ifconfig ”命令的参数将显示特定网络接口的详细信息:

# ifconfig eth0

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 198.12.80.139 netmask 255.255.255.192 broadcast 198.12.80.191
inet6 fe80::216:3cff:fef5:533d prefixlen 64 scopeid 0x20<link>
ether 00:16:3c:f5:53:3d txqueuelen 1000 (Ethernet)
RX packets 254356121 bytes 25164873980 (23.4 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 13449314 bytes 10014975055 (9.3 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

4、启用网络接口

带有接口名称 ( eth0 ) 的“ up ”或“ ifup ”标志会激活网络接口(如果它不是非活动状态)并允许发送和接收信息。例如,“ ifconfig eth0 up ”或“ ifup eth0 ”将激活eth0接口。

# ifconfig eth0 up
或者
# ifup eth0

5、禁用网络接口

带有接口名称 ( eth0 ) 的“ down ”或“ ifdown ”标志会停用指定的网络接口。例如,如果eth0接口处于非活动状态,则“ ifconfig eth0 down ”或“ ifdown eth0 ”命令将停用该接口。

# ifconfig eth0 down
或者
# ifdown eth0

6、为网络接口分配IP地址

要将IP地址分配给特定接口,请使用以下命令以及要设置的接口名称 ( eth0 ) 和IP地址。例如,“ ifconfig eth0 172.16.25.25 ”会将IP地址设置为接口eth0。

# ifconfig eth0 172.16.25.25

7、为网络接口分配网络掩码

使用带有“ netmask ”参数和接口名称(eth0 )的“ ifconfig ”命令,可以为给定接口定义网络掩码。例如,“ ifconfig eth0 netmask 255.255.255.224 ”会将网络掩码设置为给定接口eth0。

[root@tecmint ~]# ifconfig eth0 netmask 255.255.255.224

8、将广播分配给网络接口

将“ broadcast ”参数与接口名称一起使用将为给定接口设置广播地址。例如,“ ifconfig eth0 Broadcast 172.16.25.6 ”命令将广播地址设置为接口eth0

# ifconfig eth0 broadcast 172.16.25.6

9、为网络接口分配IP、网络掩码和广播

要使用“ ifconfig ”命令以及下面给出的所有参数一次性分配IP地址、网络掩码地址和广播地址:

# ifconfig eth0 172.16.25.25 netmask 255.255.255.224 broadcast 172.16.25.6

10、更改网络接口的MTU

“ mtu ”参数设置接口的最大传输单元,它允许你设置在接口上传输的数据包的限制大小MTU能够在一次事务中处理接口的最大数量的八位字节。例如,“ ifconfig eth0 mtu 1000 ”会将最大传输单元设置为给定的集合(即1000)。注意,并非所有网络接口都支持MTU设置。

# ifconfig eth0 mtu 1000

11、启用混杂模式

在正常模式下,当网卡收到数据包时,它会验证该数据包是否属于自己。如果不是,它会正常丢弃数据包,但在混杂模式下用于接受流经网卡的所有数据包。当今的网络工具使用混杂模式来捕获和分析流经网络接口的数据包。要设置混杂模式,请使用以下命令:

# ifconfig eth0 promisc

12、禁用混杂模式

要禁用混杂模式,请使用“ -promisc ”开关将网络接口恢复到正常模式:

# ifconfig eth0 -promisc

13、向网络接口添加新别名

ifconfig实用程序允许使用别名功能配置其它网络接口。要添加eth0的别名网络接口,请使用以下命令。请注意,别名网络地址位于同一子网掩码中。例如,如果eth0网络IP地址是172.16.25.25,则别名IP地址必须是172.16.25.27

# ifconfig eth0:0 172.16.25.27

接下来,使用“ ifconfig eth0:0 ”命令验证新创建的别名网络接口地址:

# ifconfig eth0:0

eth0:0    Link encap:Ethernet  HWaddr 00:01:6C:99:14:68
          inet addr:172.16.25.27  Bcast:172.16.25.6  Mask:255.255.255.240
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Interrupt:17

14、删除网络接口的别名

如果不再需要别名网络接口或者配置不正确,可以使用以下命令将其删除:

# ifconfig eth0:0 down

15、更改网络接口的MAC地址

要更改eth0网络接口的MAC(媒体访问控制)地址,请使用以下带有参数“ hw ether ”的命令,具体如下:

# ifconfig eth0 hw ether AA:BB:CC:DD:EE:FF

这些是在Linux中配置网络接口的最有用的命令,有关ifconfig命令的更多信息和用法,请使用终端上的“ man ifconfig ”等联机帮助页。另外,也可以查看下面的一些其它网络实用程序。

其它网络实用程序

  • nmcli – 用于控制NetworkManager和报告网络信息的命令行客户端。
  • Tcmpdump – 是一个用于监控网络流量的命令行数据包捕获和分析工具。
  • Netstat – 是一个开源命令行网络监控工具,用于监控传入和传出的网络数据包流量。
  • ss(socket stats) – 在Linux系统上打印网络套接字相关信息的工具。
  • Wireshark – 是一种开源网络协议分析器,用于解决网络相关问题。
  • Munin – 是一个基于 Web 的网络和系统监控应用程序,用于使用rrdtool以图表形式显示结果。
  • Cacti – 是一个完整的基于网络的监控和图形应用程序,用于网络监控。

要获取上述任何工具的更多信息和选项,请通过在命令提示符下输入“ man toolname ”来查看手册页。例如,要获取“ netstat”工具的信息,请使用命令“ man netstat ”。

赞(0)
网站声明:本文内容由趣云笔记原创,部分资源收集于网络,如有侵权请联系企鹅:2472781824删除。
文章名称:《Linux系统中配置网络接口的15个有用“ifconfig”命令详解》
文章链接:https://www.ecscoupon.com/1247.html
本站资源仅供个人学习交流,未经允许不得转载,更不允许用于商业用途。如需转载,请注明来源,感谢理解!