目录
- 一、基本语法
- 二、常见用途及示例
- 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
命令。