【Linux】一步一步学Linux——ifconfig命令(151)

00. 目录

01. 命令概述

ifconfig命令的英文全称是“network interfaces configuring”,即用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。

02. 命令格式

ifconfig [接口]
ifconfig 接口 [aftype] options | address ...

03. 常用选项

interface
接口的名称。这通常是一个驱动程序名,后面跟着一个单元号,例如用于第一个以太网接口的eth0。

up
此标志将导致激活接口。如果将地址分配给接口,则会隐式指定该地址。

down
此标志导致关闭此接口的驱动程序。

[-]arp
启用或禁用在此接口上使用ARP协议。

[-]promisc
启用或禁用接口的混杂模式。如果选中,网络上的所有数据包都将由接口接收。

[-]allmulti
启用或禁用所有多播模式。如果选中,则接口将接收网络上的所有多播数据包。

metric N
此参数设置接口度量。它在GNU/Linux下不可用

mtu N
此参数设置接口的最大传输单元(MTU)。

dstaddr addr
为点对点链路(如PPP)设置远程IP地址.这个关键字现在已经过时了;使用pointopoint关键字代替。

netmask addr
设置此接口的IP网络掩码。此值默认为通常的A、B或C类网络掩码(从接口IP地址派生),但可以设置为任何值。

add addr/prefixlen
向接口添加IPv 6地址

del addr/prefixlen
从接口中删除IPv 6地址

tunnel ::aa.bb.cc.dd
创建一个新的SIT(IPv6-in-IPv4)设备,通过隧道到达给定的目的地。

irq addr
设置此设备使用的中断行。并非所有设备都可以动态更改其IRQ设置。

io_addr addr
为该设备设置I/O空间中的起始地址

mem_start addr
设置此设备使用的共享内存的起始地址。只有少数几个设备需要这个

media type
设置设备要使用的物理端口或介质类型。并非所有设备都可以更改此设置,以及那些可以更改其支持的值的设备。典型的类型值是10 base 2(细以太网)、10 base T(双绞线10 Mbps以太网)、AUI(外收发信机)等。驱动的特殊介质类型可以用来告诉驱动对媒体进行自动感知。同样,并不是所有的驱动都能做到这一点。

[-]broadcast [addr]
如果地址参数给定,则为该接口设置协议广播地址。否则,设置(或清除)接口的IFF_BROADCAST标志。

[-]pointopoint [addr]
这个关键字启用了接口的点对点模式,这意味着它是两台机器之间的直接链接,没有其他人监听它。如果地址参数也给出了,就像过时的dstaddr关键字一样,设置链接另一端的协议地址。否则,设置或清除接口的IFF_POINTOPOINT标志。

hw class address
如果设备驱动程序支持此操作,则设置此接口的硬件地址。关键字后面必须跟着硬件类的名称和相当于硬件地址的可打印的ASCII。目前支持的硬件类包括ether (以太网)、ax25(AMPRAX.25)、ARCnet和netrom(AMPR NET/ROM)。

multicast
在接口上设置多播标志。这通常不应该需要,因为驱动程序本身设置正确的标志。

address
要分配给此接口的IP地址。

txqueuelen length
设置设备的传输队列的长度。对于具有高延迟(调制解调器链路,ISDN)的较慢设备,将其设置为小值是有用的,以防止快速批量传输过多地干扰诸如telnet之类的交互通信。

04. 参考示例

4.1 查看处于激活状态的网络接口信息

[root@localhost ~]# ifconfig  
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.16.0.76  netmask 255.255.254.0  broadcast 172.16.1.255
        inet6 fe80::16e5:9e6b:b4d5:68de  prefixlen 64  scopeid 0x20<link>
        ether 00:50:56:26:d8:88  txqueuelen 1000  (Ethernet)
        RX packets 6228371  bytes 1866155533 (1.7 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 12697  bytes 4930072 (4.7 MiB)
        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 58611  bytes 3738994 (3.5 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 58611  bytes 3738994 (3.5 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:d2:18:f4  txqueuelen 1000  (Ethernet)
        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

[root@localhost ~]# 

4.2 所有配置的网络接口,不论其是否激活

[root@localhost ~]# ifconfig  -a
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.16.0.76  netmask 255.255.254.0  broadcast 172.16.1.255
        inet6 fe80::16e5:9e6b:b4d5:68de  prefixlen 64  scopeid 0x20<link>
        ether 00:50:56:26:d8:88  txqueuelen 1000  (Ethernet)
        RX packets 6228561  bytes 1866208151 (1.7 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 12712  bytes 4933606 (4.7 MiB)
        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 58623  bytes 3739714 (3.5 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 58623  bytes 3739714 (3.5 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:d2:18:f4  txqueuelen 1000  (Ethernet)
        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

virbr0-nic: flags=4098<BROADCAST,MULTICAST>  mtu 1500
        ether 52:54:00:d2:18:f4  txqueuelen 1000  (Ethernet)
        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

[root@localhost ~]# 

4.3 显示ens33网卡信息


[root@localhost ~]# ifconfig  ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.16.0.76  netmask 255.255.254.0  broadcast 172.16.1.255
        inet6 fe80::16e5:9e6b:b4d5:68de  prefixlen 64  scopeid 0x20<link>
        ether 00:50:56:26:d8:88  txqueuelen 1000  (Ethernet)
        RX packets 6229282  bytes 1866403997 (1.7 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 12777  bytes 4946850 (4.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@localhost ~]# 

4.4 关闭网卡

[root@localhost home]# ifconfig ens33 down
[root@localhost home]# 

4.5 启动网卡

[root@localhost home]# ifconfig ens33 up
[root@localhost home]# 

4.6 添加ipv6地址

[root@localhost ~]# ifconfig ens33 add 33ffe:3240:800:1005::2/64
[root@localhost ~]# 

4.7 删除ipv6地址

[root@localhost ~]# ifconfig ens33 del 33ffe:3240:800:1005::2/64
[root@localhost ~]# 

4.8 修改mac地址

[root@localhost ~]# ifconfig ens33 hw ether 00:50:56:26:d8:88
[root@localhost ~]# 

4.9 配置IP地址

[root@localhost ~]# ifconfig  ens33 172.16.0.76
[root@localhost ~]# 

4.10 配置IP地址的同时指定掩码

[root@localhost ~]# ifconfig  ens33 172.16.0.76 netmask 255.255.254.0
[root@localhost ~]# 

4.11 配置IP地址的同时指定掩码和广播地址

[deng@localhost ~]$ ifconfig ens33 172.16.0.76 netmask 255.255.254.0 broadcast 172.16.1.255

4.12 设置能通过的最大数据包大小为 1500 bytes

[root@localhost ~]# ifconfig  ens33 mtu 1500

4.13 开启arp功能

[root@localhost ~]# ifconfig ens33 arp
[root@localhost ~]# 

4.14 关闭arp功能

[root@localhost ~]# ifconfig ens33 -arp
[root@localhost ~]# 

05. 总结

在这里插入图片描述

06. 附录

参考:【Linux】一步一步学Linux系列教程汇总

  • 16
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值