ifconfig命令主要用于配置或显示网络设备(Network Interface Controller 网卡、网络适配器)。使用ifconfig命令还可以指定网络接口地址(ip地址)。
语法:
ifconfig [-a | -s | -v] [网络设备] [down | up |[-]allmulit | [-]arp | [-]promisc] [add <地址>] [del <地址>] [hw<网络设备类型> <硬件地址>] [io_addr <I/O地址>] [irq <IRQ地址>] [media <网络介质类型>] [mem_start <内存地址>] [metric <数目>] [mtu <字节>] [netmask <子网掩码>] [tunnel <地址>] [[-]broadcast <地址>] [[-]pointtopoint <地址>] [IP地址]
- -a :显示全设备信息 。(默认显示激活的设备)
- -s :显示设备简短信息。
- -v :显示详细信息。
- [网络设备] :网络设备的名称。如eth0
- down : 关闭指定的网络设备。
- up :启动指定的网络设备。
- allmulit : 决定网络设备是否要接收多播数据包。负号表示接收,不加符号表示不接收。
- arp :关闭或启动指定网络设备的ARP以获取硬件地址。符号表示关闭,不加符号表示启动。
- promisc :关闭或者启动指定网络设备的promiscuous模式(接收所有网络数据包)。负号表示关闭,不加负号表示启动。
- add <地址> : 设置网络设备IPv6的IP地址。
- del <地址> : 删除网络设备IPv6的IP地址。
- hw <网络设备类型> <硬件地址> :设置网络设备的类型与硬件地址。所支持的类型有ether、ax25、APCnet和netrom。
- io_add <I/O地址> : 设置网络设备的I/O地址。
- irq <IRQ 地址> :设置网络设备的中断请求。
- media <网络介质类型> :设置网络设备的介质类型。
- mem_start <内存地址> :设置网络设备在内存中所占用的起始地址。
- metric <数目> :指定在计算数据包的传送次数时,所要加上的数目。
- mtu <字节> : 设置网络设备的最大传输单位,单位为字节。
- netmask <子网掩码> :设置网络设备的子网掩码。
- tunnel <地址> : 建立IPv4与IPv6之间的隧道通信地址。
- broadcast <地址> : 以广播的形式将数据包送到指定地址。负号表示关闭,不加负号表示启动。
- -pointtopoint <地址> : 与指定地址的网络设备建立直连接,此模式具有保密功能。
- [IP地址]:指定网络设备的IP地址。
上图是ifconfig命令的输出。具体表明:
- eth0 :表示当前系统的第一块以太网卡。如果有多块网卡,其他网卡编号会eth1,eth2 以此类推。
- lo :本地回环网卡。
- HWaddr :MAC地址。
- inet addr :IP地址。(IPv4标准)
- Bcast : 广播地址。
- Mask :子网掩码。
- inet6 addr :IP地址。(IPv6标准)
- MTU :设备的最大传输单元。
- Metric:设备的度量值。
- RX : 接收的数据包。
- TX : 传送的数据包。
- Interrupt :中断号。
- Base address :端口号。
示例:
$ ifconfig eth0 192.168.1.105 netmask 255.255.255.0 broadcast 192.168.1.255
## 设置eth0 网络接口IP为 192.168.1.105 。 子网掩码为 255.255.255.0 广播地址为 192.168.1.255
$ ifconfig ehto down
## 禁用 eth0 网络接口
$ ifconfig etho up
## 启用 eth0 网络接口
$ ifconfig eth0 add addr fe80::20c:29ff:fedb:ace6/64
## 添加一个IPv6 地址