
目录
- 一、基本语法
- 二、常见用途及示例
- 1. 查看所有网络接口信息
- 2. 启用/禁用网络接口
- 3. 配置 IP 地址和子网掩码
- 4. 修改 MAC 地址
- 5. 启用混杂模式(Promiscuous Mode)
- 6. 设置 MTU(最大传输单元)
- 三、其他选项
- 四、常见问题
- 1. 新系统中没有 `ifconfig`?
- 2. `ifconfig` vs `ip` 命令
- 3. 配置永久生效
- 五、总结
ifconfig(Interface Configurator)是 Linux 和 Unix 系统中用于配置和查看网络接口的经典工具。尽管现代 Linux 系统逐渐转向 ip 命令(来自 iproute2 工具包),但 ifconfig 仍然广泛使用。以下是 ifconfig 的详细使用说明:
一、基本语法
ifconfig [选项] [接口] [操作]
二、常见用途及示例
1. 查看所有网络接口信息
ifconfig
# 或指定接口(如 eth0、wlan0)
ifconfig eth0
输出说明:
inet: IPv4 地址netmask: 子网掩码inet6: IPv6 地址ether: MAC 地址RX/TX: 接收/发送的数据包统计
2. 启用/禁用网络接口
# 启用接口(如 eth0)
sudo ifconfig eth0 up
# 禁用接口
sudo ifconfig eth0 down
3. 配置 IP 地址和子网掩码
# 临时设置 IP 地址(重启后失效)
sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0
# 或简写
sudo ifconfig eth0 192.168.1.100/24
4. 修改 MAC 地址
sudo ifconfig eth0 down # 先关闭接口
sudo ifconfig eth0 hw ether 00:11:22:33:44:55
sudo ifconfig eth0 up # 重新启用
注意:MAC 地址修改是临时的,重启后恢复。
5. 启用混杂模式(Promiscuous Mode)
sudo ifconfig eth0 promisc # 启用
sudo ifconfig eth0 -promisc # 禁用
用途:用于网络抓包分析(如 Wireshark)。
6. 设置 MTU(最大传输单元)
sudo ifconfig eth0 mtu 1500
默认值为 1500(以太网),可调整用于优化网络性能。
三、其他选项
| 选项 | 说明 |
|---|---|
-a | 显示所有接口(包括未启用的) |
-s | 显示简要统计信息 |
--help | 查看帮助 |
四、常见问题
1. 新系统中没有 ifconfig?
- 安装
net-tools包:sudo apt install net-tools # Debian/Ubuntu sudo yum install net-tools # CentOS/RHEL
2. ifconfig vs ip 命令
现代 Linux 推荐使用 ip 命令(功能更强大):
ip addr show # 查看接口(类似 ifconfig)
ip link set eth0 up # 启用接口
ip addr add 192.168.1.100/24 dev eth0 # 添加 IP
3. 配置永久生效
ifconfig 的配置是临时的,需通过以下方式持久化:
- 编辑网络配置文件(如
/etc/network/interfaces或使用NetworkManager)。 - 使用
netplan(Ubuntu 18.04+)。
五、总结
- 适用场景:快速查看或临时配置网络接口。
- 局限性:逐步被
ip命令取代,建议学习iproute2工具集。 - 注意权限:大部分操作需
root权限(使用sudo)。
掌握 ifconfig 仍对维护旧系统或脚本兼容性有帮助,但建议逐步过渡到 ip 命令。