写点什么

Linux 网络管理工具:ifconfig,从入门到精通!

作者:Ethereal
  • 2022 年 3 月 16 日
  • 本文字数:2412 字

    阅读完需:约 8 分钟

Linux网络管理工具:ifconfig,从入门到精通!

ifconfig(接口配置)是一个网络管理工具,它用于配置和查看 Linux 操作系统中网络接口的状态,使用 ifconfig,您可以分配 IP 地址、启用或禁用接口、管理 ARP 缓存、路由等。



在本文中,我们将探讨如何使用该 ifconfig 命令。

如何安装 ifconfig

该 ifconfig 命令已被弃用并被替换,ip 并且可能不包含在较新的 Linux 发行版中。


如果您收到一条错误消息“ifconfig: command not found”,这意味着您的系统上没有安装包含该命令的软件包。

ifconfig 在 Ubuntu/Debian 上安装

在基于 Ubuntu 和 Debian 的 Linux 发行版上,运行以下命令进行安装 ifconfig:


sudo apt install net-tools -y
复制代码

ifconfig 在 Centos 上安装

要 ifconfig 在 CentOS 和其他基于 RHEL 的 Linux 发行版上安装,请键入:


sudo dnf install net-tools -y
复制代码

如何使用 ifconfig 命令

该 ifconfig 命令的基本语法如下所示:


ifconfig [-a] [-v] [-s] <interface> [[<AF>] <address>]
复制代码


  • interface- 是网络接口的名称。

  • address- 是您要分配的 IP 地址。


使用该 ifconfig 命令设置的配置不是持久的。系统重新启动后,所有更改都将丢失。要使更改永久生效,您需要编辑特定于发行版的配置文件或将命令添加到启动脚本。


只有 root 或具有 sudo 权限的用户才能配置网络接口。

显示网络接口信息

不带任何选项调用时,ifconfig 显示所有网络接口的配置信息和关联的 IP 地址:


ifconfig -a
复制代码


输出包括有关所有活动和非活动网络接口的信息:


docker0   Link encap:Ethernet  HWaddr 56:84:7a:fe:97:99            inet addr:172.17.42.1  Bcast:0.0.0.0  Mask:255.255.0.0          UP BROADCAST 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:1000           RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:4198 errors:0 dropped:0 overruns:0 frame:0 TX packets:4198 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:498729 (498.7 KB) TX bytes:498729 (498.7 KB)
eth0 Link encap:Ethernet HWaddr 4c:bb:58:9c:f5:55 inet addr:172.20.10.3 Bcast:172.20.10.15 Mask:255.255.255.240 inet6 addr: 2401:4900:1d65:40a1:4ebb:58ff:fe9c:f555/64 Scope:Global inet6 addr: 2401:4900:1d65:40a1:f1c9:6a90:2d99:924e/64 Scope:Global inet6 addr: fe80::4ebb:58ff:fe9c:f555/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:84110 errors:0 dropped:0 overruns:0 frame:0 TX packets:59727 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:70667629 (70.6 MB) TX bytes:20886290 (20.8 MB)
复制代码


要显示任何特定网络接口的配置信息,请在命令后写入接口名称:


ifconfig eth0
复制代码


输出将如下所示:


eth0      Link encap:Ethernet  HWaddr 4c:bb:58:9c:f5:55            inet addr:172.20.10.3  Bcast:172.20.10.15  Mask:255.255.255.240          inet6 addr: 2401:4900:1d65:40a1:4ebb:58ff:fe9c:f555/64 Scope:Global          inet6 addr: 2401:4900:1d65:40a1:f1c9:6a90:2d99:924e/64 Scope:Global          inet6 addr: fe80::4ebb:58ff:fe9c:f555/64 Scope:Link          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1          RX packets:84110 errors:0 dropped:0 overruns:0 frame:0          TX packets:59727 errors:0 dropped:0 overruns:0 carrier:0          collisions:0 txqueuelen:1000           RX bytes:70667629 (70.6 MB)  TX bytes:20886290 (20.8 MB)
复制代码

为网络接口分配 IP 地址和网络掩码

使用该 ifconfig 命令,您可以为网络接口分配 IP 地址和网络掩码。


使用以下语法分配 IP 地址和网络掩码:


  ifconfig [interface-name] [ip-address] netmask [subnet-mask]
复制代码


例如,要将 IP 地址 192.168.0.101 和网络掩码分配 255.255.0.0 给 interface eth0,您将运行:


ifconfig eth0 192.168.0.101 netmask 255.255.0.0
复制代码


您还可以使用接口别名为网络接口分配辅助 IP 地址:


ifconfig eth0:0 192.168.0.102 netmask 255.255.0.0
复制代码

启用和禁用网络接口

有时,您可能需要重置网络接口。在这种情况下,该 ifconfig 命令可用于启用或禁用网络接口。


要禁用活动网络接口,请输入设备名称,后跟 down 标志:


ifconfig eth0 down
复制代码


要启用非活动网络接口,请使用以下 up 标志:


ifconfig eth0 up
复制代码

启用和禁用混杂模式

混杂允许网络接口访问和查看网络中的所有数据包。您可以使用该 ifconfig 命令在特定网络设备上启用和禁用混杂。


要在网络接口上启用混杂模式,请 promisc 在设备名称后输入标志:


ifconfig eth0 promisc
复制代码


要禁用混杂模式,请使用-promisc 标志


ifconfig eth0 -promisc
复制代码

更改网络接口的 MTU

MTU“最大传输单元”允许您限制在接口上传输的数据包的大小。


您可以使用以下语法更改 MTU 值:


ifconfig [interface-name] mtu [mtu-value]
复制代码


例如,将网络接口的 MTU 值设置 eth0 为 500,运行以下命令:


ifconfig eth0 mtu 500
复制代码

更改网络接口的 MAC 地址

MAC“媒体访问控制”是唯一标识网络上设备的物理地址。


要更改网络接口的 MAC 地址,请使用 hw ether 标志设置新的 MAC 地址:


ifconfig eth0 hw ether 00:00:2d:3a:2a:28
复制代码

结论

我们已经向您展示了如何使用该 ifconfig 命令来配置和显示有关网络接口的信息,有关详细信息 ifconfig,请访问 ifconfig 命令手册页 。


如果您有任何问题,请在下方发表评论。

用户头像

Ethereal

关注

还未添加个人签名 2020.11.18 加入

还未添加个人简介

评论

发布
暂无评论
Linux网络管理工具:ifconfig,从入门到精通!_Ethereal_InfoQ写作平台