Linux 命令 ifconfig 全面解析!

2023-12-26 22:51:08

ifconfignetwork interfaces configuring 的缩写。

在 Linux 操作系统中,ifconfig 用于显示或配置网络设备的参数信息。

查看网卡信息

$ ifconfig # 显示激活状态(up 状态)的网卡信息
eth0 Link encap:Ethernet  HWaddr 00:0c:29:75:8c:97  
     inet addr:192.168.58.128  Bcast:192.168.58.255  Mask:255.255.255.0
     inet6 addr: fe80::6ae2:c35e:aa62:2b95/64 Scope:Link
     UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
     RX packets:1110 errors:0 dropped:0 overruns:0 frame:0
     TX packets:115 errors:0 dropped:0 overruns:0 carrier:0
     collisions:0 txqueuelen:1000 
     RX bytes:72987 (72.9 KB)  TX bytes:12448 (12.4 KB)

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:204 errors:0 dropped:0 overruns:0 frame:0
     TX packets:204 errors:0 dropped:0 overruns:0 carrier:0
     collisions:0 txqueuelen:1000 
     RX bytes:15378 (15.3 KB)  TX bytes:15378 (15.3 KB)

以 eth0 为例,其网卡信息含义如下所示:

名称含义
eth0网卡名称
Link encap网卡连接类型
HWaddr网卡 MAC 地址
inet addrIPv4 的 IP 地址
Bcast广播地址
Mask子网掩码
inet6 addrIPv6 的 IP 地址
ScopeIPv6 的域范围
UP表示网卡已经启用
BROADCAST表示主机支持广播
RUNNING表示网卡正在运行中
MULTICAST表示主机支持多播
MTU最大传输单元
Metric表示接口度量值
RX packets:接收的数据包数
errors:接收时错误的数据包数
dropped接收时丢弃的数据包数
overruns:接收时由于 buffer 溢出而丢弃的数据包数
frame:接收时由于 frame 错位而丢弃的数据包数
TX packets发送的数据包数
errors:发送时错误的数据包数
dropped:发送时丢弃的数据包数
overruns:发送时由于 buffer 溢出而丢弃的数据包数
carrier:发送时由于 carrier 错误而丢弃的数据包数
collisions:表示冲突信息的数据包数目
txqueuelen:表示网卡设置传输队列的大小
RX bytes:接收的数据包字节数
TX bytes:发送的数据包字节数

常见的网络接口

  • lo 本地回环接口
  • br0 网桥接口
  • eth0 以太网接口
  • wlan0 无线接口

其他常用命令

查看帮助

$ ifconfig --help
Usage:
  ifconfig [-a] [-v] [-s] <interface> [[<AF>] <address>]
  [add <address>[/<prefixlen>]]
  [del <address>[/<prefixlen>]]
  [[-]broadcast [<address>]]  [[-]pointopoint [<address>]]
  [netmask <address>]  [dstaddr <address>]  [tunnel <address>]
  [outfill <NN>] [keepalive <NN>]
  [hw <HW> <address>]  [metric <NN>]  [mtu <NN>]
  [[-]trailers]  [[-]arp]  [[-]allmulti]
  [multicast]  [[-]promisc]
  [mem_start <NN>]  [io_addr <NN>]  [irq <NN>]  [media <type>]
  [txqueuelen <NN>]
  [[-]dynamic]
  [up|down] ...
  
  ...

查看全部网卡信息

$ ifconfig -a

查看网卡摘要信息

$ ifconfig -s

查看指定网卡信息

$ ifconfig eth0     #查看 eth0 网卡

启用/禁用指定网卡

$ ifconfig eth0 up      #启用 eth0 网卡
$ ifconfig eth0 down    #禁用 eth0 网卡

启用/禁用 ARP 协议

$ ifconfig eth0 arp   #启用 eth0 ARP
$ ifconfig eth0 -arp  #关闭 eth0 ARP

启用/禁用广播功能

$ ifconfig eth0 broadcast 192.168.1.255   # 启用 eth0 广播功能
$ ifconfig eth0 -broadcast                # 禁用 eth0 广播功能

配置 IP、子网掩码、广播地址

$ ifconfig eth0 192.168.1.123   #配置 eth0 IP 地址
$ ifconfig eth0 192.168.1.123 network 255.255.255.0 #配置 eth0 IP 地址和子网掩码
$ ifconfig eth0 192.168.1.123 network 255.255.255.0 broadcast 192.168.1.255 #配置 eth0 IP 地址、子网掩码和广播地址

单网卡配置/删除多个 IP

$ ifconfig eth0:0 192.168.0.123 network 255.255.255.0 up #添加 IP
$ ifconfig eth0:1 192.168.0.100 network 255.255.255.0 up #添加 IP
$ ifconfg eth0:0 down #删除 IP
$ ifconfg eth0:1 down #删除 IP

配置/删除 IPv6 地址

$ ifconfig eth0 add 33ffe:3240:800:1005::2/ 64 #为网卡设置 IPv6 地址
$ ifconfig eth0 del 33ffe:3240:800:1005::2/ 64 #为网卡删除 IPv6 地址

修改 MAC 地址

$ ifconfig eth0 hw ether FF:AA:BB:CC:DD:EE #修改 eth0 MAC 地址

配置最大传输单元

$ ifconfig eth0 mtu 1500 #设置 eth0 能通过的最大数据包大小为 1500 bytes

开启/关闭混杂模式

$ ifconfig eth0 promisc  #开启混杂模式
$ ifconfig eth0 -promisc #关闭混杂模式

配置度量值

$ ifconfig eth0 metric 1

更多内容

文章来源:https://blog.csdn.net/weixin_44550536/article/details/135232300
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。