提示:ifconfig命令是最重要的Linux网络命令之一,最主要的用途是修改网卡的地址。但Linux的ip命令和ifconfig类似,但前者功能更强大,并旨在取代后者。使用ip命令,只需一个命令,你就能很轻松地执行一些网络管理任务。ifconfig是net-tools中已被废弃使用的一个命令,许多年前就已经没有维护了。iproute2套件里提供了许多增强功能的命令,ip命令即是其中之一。在CentOS 7配置上ip ,ss指令逐步替代 ifconfig route arp netstat,但两在有些CentOS 7上共存的,有些版本上面只有ip和ss了。

   下面我们来看看这几个命令的详细用法,以了解它们到底那个好用,那个强大^_^。


一、ifconfig命令:    

    1、作用:用来设置网络设备状态,或者显示目前设置

    

   2、用法: ifconfig [dev] 选项

    

   3、选项:只列常用的,不常用的可以man        

        up     启动指定网络设备/网卡。

        down    关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息流,如果想永久地

        关闭一个接口,我们还需要从核心路由表中将该接口的路由信息全部删除。

        arp     设置指定网卡是否支持ARP协议。

        -promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的

        数据包

        -a    显示全部接口信息

        -s    显示摘要信息(类似于 netstat -i)

        add    给指定网卡配置IPv6地址

        del     删除指定网卡的IPv6地址

        <硬件地址> 配置网卡最大的传输单元

         mtu<字节数> 设置网卡的最大传输单元 (bytes)

        netmask<子网掩码> 设置网卡的子网掩码。掩码可以是有前缀0x的32位十六进制数,也可以是用点

        分开的4个十进制数。如果不打算将网络分成子网,可以不管这一选项;如果要使用子网,

        那么请记住,网络中每一个系统必须有相同子网掩码。

        address  为网卡设置IPv4地址


 4、状态信息详解:wKioL1Z_UDXDQuw8AAA0Q1tywyY397.png

        eno16777736:  网络接口(即网卡标识:CentOS7及以上是这种格式,以下一般为eth0,后面数字可能不一样)     

        flags:             网络接口的数字表达方式

        UP:                接口处于开放状态

        down:             接口处于关闭状态

        BROADCAST:  广播地址开放状态

        RUNNING:     运行中

        MULTICAST:   接口支持多路传送

        MTU:             定义包的存储片大小(可改)

        inet:              IPv4后面根IP地址

        netmask:       子网掩码

        broadcast:      广播地址

        inet6:            IPv6后面为地址表达方式

        RX:               发送的数据包大小及其回馈状态

        TX:               接收的数据包大小及其回馈状态


5、使用实例:

        

        (1)、显示状态(激活状态的信息):命令-----#:ifconfig                wKiom1Z_VJbB4L3VAACQM2DRDv4634.png

        

        (2)、启用和关闭网卡接口:

                    ifconfig eno16777736 up     

wKioL1Z_VqfwsODyAAB9u3kxoGA344.png

                               ifconfig eno16777736 down 

wKiom1Z_VpDCvPajAAC3xDjHXOs142.png

        (3)、  ifconfig修改MAC地址:(用于MAC地址欺骗

        [root@localhost ~]ifconfig eno16777736 down //关闭网卡
         [root@localhost ~]ifconfig eno16777736 hw ether 00:AA:BB:CC:DD:EE //修改MAC地址
         [root@localhost ~]ifconfig eno16777736 up //启动网卡
         [root@localhost ~]# ifconfig
      eno16777736 Link encap:Ethernet  HWaddr 00:AA:BB:CC:DD:EE  
                  inet addr:192.168.120.204  Bcast:192.168.120.255  Mask:255.255.255.0
                  UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                  RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0
                  TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0
                  collisions:0 txqueuelen:1000 
                  RX bytes:596390239 (568.7 MiB)  TX bytes:2886956 (2.7 MiB)
        [root@localhost ~]ifconfig eno16777736 hw ether 00:50:56:BF:26:20 //关闭网卡并修改MAC地址 
        [root@localhost ~]ifconfig eno16777736 up //启动网卡
        [root@localhost ~]# ifconfig

  eno16777736 Link encap:Ethernet  HWaddr 00:50:56:BF:26:20  
                  inet addr:192.168.120.204  Bcast:192.168.120.255  Mask:255.255.255.0
                  UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                  RX packets:8700857 errors:0 dropped:0 overruns:0 frame:0
                  TX packets:31533 errors:0 dropped:0 overruns:0 carrier:0
                  collisions:0 txqueuelen:1000 
                  RX bytes:596390239 (568.7 MiB)  TX bytes:2886956 (2.7 MiB)

  

          (4)、  ifconfig修改MAC地址:(用于MAC地址欺骗

                ifconfig eno16777736 IPADDR

wKioL1Z_WsyhmaxnAAB_iTLTZeQ337.png

                    等效上面

wKiom1Z_WsOQd_rAAAARDJF6BkQ955.png


            (5)、为网卡添加多个IP地址及删除指定IP

            ifconfig eno16777736 1 IPADDR

            ifconfig eno16777736 2 IPADDR 

wKioL1Z_XhHyNBY7AAARNAcRraA928.png

wKiom1Z_XfninfeFAACiLLNN-wM164.png

            ifconfig eno16777736 del IPADDR

wKiom1Z_XfnitNVUAAAOi2IwK38140.png