使用ifconfig命令配置网络或显示当前网络接口状态
ifconfig命令可以用于查看、显示和配置、激活或关闭网络接口,例如设置IP地址、掩码、MAC地址、广播地址、网关、激活或关闭网络接口
ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数。
用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件:/etc/sysconfig/network-scrips/ifcfg-*
安装
部分Linux系统尚未拥有ifconfig命令,可以执行以下命令进行安装
[root@localhost ~]# yum -y install net-tools
ifconfig语法
功能说明:查看、显示和配置、激活或关闭网络接口,例如设置IP地址、掩码、MAC地址、广播地址、网关、激活或关闭网络接口
ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址]
选项及参数说明:
add<地址>
:设置网络设备IPv6的IP地址。del<地址>
:删除网络设备IPv6的IP地址。down
:关闭指定的网络设备。<hw<网络设备类型><硬件地址>
:设置网络设备的类型与硬件地址。io_addr<I/O地址>
:设置网络设备的I/O地址。irq<IRQ地址>
:设置网络设备的IRQ。media<网络媒介类型>
:设置网络设备的媒介类型。mem_start<内存地址>
:设置网络设备在主内存所占用的起始地址。metric<数目>
:指定在计算数据包的转送次数时,所要加上的数目。mtu<字节>
:设置网络设备的MTU。netmask<子网掩码>
:设置网络设备的子网掩码。tunnel<地址>
:建立IPv4与IPv6之间的隧道通信地址。up
:启动指定的网络设备。-broadcast<地址>
:将要送往指定地址的数据包当成广播数据包来处理。-pointopoint<地址>
:与指定地址的网络设备建立直接连线,此模式具有保密功能。-promisc
:关闭或启动指定网络设备的promiscuous模式。[IP地址]
:指定网络设备的IP地址。[网络设备]
:指定网络设备的名称。
ifconfig实例
使用ifconfig命令设置网卡信息会在重启后丢失,如需重启后依然生效,请手动修改网络接口配置文件使其永久生效
###查看网卡基本信息
使用ifconfig命令可以查看所有启用的网卡设备
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.229.128 netmask 255.255.255.0 broadcast 192.168.229.255
ether 00:0c:29:31:02:e5 txqueuelen 1000 (Ethernet)
RX packets 4578 bytes 5960264 (5.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 974 bytes 84602 (82.6 KiB)
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 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
查看指定网络接口信息
ifconfig命令后面可以接指定的网络接口,用于查看指定的网络接口相关信息
[root@localhost ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.229.128 netmask 255.255.255.0 broadcast 192.168.229.255
ether 00:0c:29:31:02:e5 txqueuelen 1000 (Ethernet)
RX packets 4613 bytes 5963352 (5.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 994 bytes 87728 (85.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
相关参数说明
- 第1行:格式
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
-
UP
表示此网络接口为启用状态,
-
RUNNING
表示网卡设备已连接
-
BROADCAST
:表示支持广播
-
MULTICAST
:表示支持组播
-
mtu
:为数据包最大传输单元
- 第2行:格式
inet 地址信息 netmask 子网掩码 broadcast 广播地址
-
inet
:IPv4地址信息
-
netmask
:子网掩码
-
broadcast
:广播地址
- 第3行:Ipv6地址,若无Ipv6地址信息则该行为空
- 第4行:ether为网卡的MAC地址(硬件地址),Ethernet表示连接类型为以太网,
- 第5行:接收数据包情况统计:如数据包数量、大小统计信息:格式
RX packets 接收数据包数量统计 bytes 接收数据包大小统计
-
RX
:接收数据包
-
RX packets
:数据包数量统计
-
RX bytes
:数据包大小统计
- 第6行:接受数据包的异常情况统计:如错误包数量、丢弃包数量等:
-
RX errors
:产生错误的数据包数。
-
RX dropped
:丢弃的数据包数。
-
RX overruns
:由于速度过快而丢失的数据包数。
-
RX frame
:发生frame错误而丢失的数据包数。
- 第7行:发送数据包情况统计:如数据包数量、大小统计信息:格式
TX packets 接收数据包数量统计 bytes 接收数据包大小统计
-
TX
:发送数据包
-
TX packets
:数据包数量统计
-
TX bytes
:数据包大小统计
- 第8行:发送数据包的异常情况统计:如错误包数量、丢弃包数量等;collisions表示发送冲突次数
-
TX errors
:产生错误的数据包数。
-
TX dropped
:丢弃的数据包数。
-
TX overruns
:由于速度过快而丢失的数据包数。
-
TX carrier
:接收时,发生carrier错误而丢失的数据包数。
-
TX collisions
:表示发送冲突次数
如果第6行和第8行中的丢包量、错误包量较高,通常表示物理链路存在问题。例如网线干扰过大、距离太长等
使用ifcofig命令设置指定网卡IP地址
[root@localhost ~]# ifconfig 网络接口名称 192.168.0.106
使用ifcofig命令设置指定网卡Mac地址
[root@localhost ~]# ifconfig 网络接口名称 hw ether xx:xx:xx:xx:xx:xx
使用ifcofig命令禁用网卡
[root@localhost ~]# ifconfig 网络接口名称 down
使用ifcofig命令启用网卡
[root@localhost ~]# ifconfig 网络接口名称 up
查看所有的网卡设备
[root@localhost ~]# ifconfig -a