美文网首页
ifconfig:熟悉的陌生命令行

ifconfig:熟悉的陌生命令行

作者: 枯树恋 | 来源:发表于2019-04-16 14:43 被阅读0次

    首先看一下ifconfig的输出结果。

    liulongyang$ ifconfig
    lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
        options=1203<RXCSUM,TXCSUM,TXSTATUS,SW_TIMESTAMP>
        inet 127.0.0.1 netmask 0xff000000
        inet6 ::1 prefixlen 128
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
        nd6 options=201<PERFORMNUD,DAD>
    gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
    stf0: flags=0<> mtu 1280
    XHC20: flags=0<> mtu 0
    XHC1: flags=0<> mtu 0
    XHC0: flags=0<> mtu 0
    en0: flags=8823<UP,BROADCAST,SMART,SIMPLEX,MULTICAST> mtu 1500
        ether 8c:85:90:48:78:6e
        nd6 options=201<PERFORMNUD,DAD>
        media: autoselect (<unknown type>)
        status: inactive
    en3: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
        options=60<TSO4,TSO6>
        ether 72:00:c4:99:17:01
        media: autoselect <full-duplex>
        status: inactive
    en1: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
        options=60<TSO4,TSO6>
        ether 72:00:c4:99:17:00
        media: autoselect <full-duplex>
        status: inactive
    en4: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
        options=60<TSO4,TSO6>
        ether 72:00:c4:99:17:05
        media: autoselect <full-duplex>
        status: inactive
    en2: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
        options=60<TSO4,TSO6>
        ether 72:00:c4:99:17:04
        media: autoselect <full-duplex>
        status: inactive
        p2p0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 2304
        ether 0e:85:90:48:78:6e
        media: autoselect
        status: inactive
    awdl0: flags=8902<BROADCAST,PROMISC,SIMPLEX,MULTICAST> mtu 1484
        ether 42:d5:d0:41:fb:0c
        nd6 options=201<PERFORMNUD,DAD>
        media: autoselect
        status: inactive
    bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        options=63<RXCSUM,TXCSUM,TSO4,TSO6>
        ether 72:00:c4:99:17:00
        Configuration:
            id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
            maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
            root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
            ipfilter disabled flags 0x2
        member: en1 flags=3<LEARNING,DISCOVER>
                ifmaxaddr 0 port 11 priority 0 path cost 0
        member: en2 flags=3<LEARNING,DISCOVER>
                ifmaxaddr 0 port 13 priority 0 path cost 0
        member: en3 flags=3<LEARNING,DISCOVER>
                ifmaxaddr 0 port 10 priority 0 path cost 0
        member: en4 flags=3<LEARNING,DISCOVER>
                ifmaxaddr 0 port 12 priority 0 path cost 0
        nd6 options=201<PERFORMNUD,DAD>
        media: <unknown type>
        status: inactive
    utun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 2000
        inet6 fe80::d10b:bb12:23d:b9f2%utun0 prefixlen 64 scopeid 0x11
        nd6 options=201<PERFORMNUD,DAD>
    en7: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        options=4<VLAN_MTU>
        ether 00:e0:4c:68:02:0e
        inet6 fe80::144b:5968:c4f:fd4%en7 prefixlen 64 secured scopeid 0x7
        inet 192.168.1.2 netmask 0xffffff00 broadcast 192.168.1.255
        nd6 options=201<PERFORMNUD,DAD>
        media: autoselect (100baseTX <full-duplex>)
        status: active
    en5: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        ether ac:de:48:00:11:22
        inet6 fe80::aede:48ff:fe00:1122%en5 prefixlen 64 scopeid 0x8
        nd6 options=201<PERFORMNUD,DAD>
        media: autoselect
        status: active
    

    IP地址是一个网卡在网络世界的通讯地址,相当于现实世界的门牌号。IP地址冲突会导致无法联网。IPV4协议中IP包含32位,每8位用点号隔开如inet 192.168.1.2。因为32位IP地址不能满足日益增多的计算机的分配,于是有了IPV6协议,如inet6 fe80::aede:48ff:fe00:1122。

    IP地址

    IpAddress.png

    32位IP地址被分成五类:A、B、C、D、E。A、B、C类地址主要分为两部分:网络号和主机号。类比于小区的房子,小明家住6单元501室,小王家住5单元501室。

    IpAddress范围.png

    明显从图中看出,C类地址包含的最大主机数实在太少了,只有254个,网吧都不止这个规模,而B类地址包含的最大主机数有太多了,一般企业也达不到这个规模。

    CIDR(Classless Inter-Domain Routing)

    CIDR即无类域间路由,打破了原来设计IP地址的做法,将32位地址一分为二,前面是网络号,后面是主机号。IP地址的形式如下:10.100.122.2/24表明前面24位是网络号,后面8位是主机号。CIDR还有两个概念:一个是是广播地址,主机号相关的位全是1,如10.100.122.255,发送这个地址所有10.100.122网络里面的机器都可以收到;另一个是子网掩码,网络号相关的位置1,主机号相关的位置0,255.255.255.0。子网掩码和IP地址按位与会得到网络号。

    私有IP地址段允许组织内部的IT人员管理和分配,甚至可以重复。共有IP地址有组织统一分配需要购买。

    D类是组播地址,使用这一类地址,是某个组的机器可以收到,类似于群发邮件。

    LO全称loopback,又叫换回接口,往往分配127.0.0.1,用于本机通信,经过内核处理直接返回。

    MAC地址

    IP地址上一行是:ether 00:e0:4c:68:02:0e,这个是MAC地址,网卡的物理地址,6个字节表示,全局唯一。任何一个网卡自生产出来就会带着这个地址。MAC地址相当于身份证,而IP地址则类似于居住地。MAC地址具有一定定位功能,只不过范围有限,局限在同一个子网里面。

    这里有一个很好的例子。假设你要找一个省份证号为12345的人,他居住在上海的某个区的某个小区的某个单元的某室。你只有在到达了这个小区,然后询问谁的身份证号为12345才能找到他。如果只知道身份证号,而你在杭州的某一个小区到处寻找,你也无法找到。

    网络的状态标识

    flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500,这个叫net_device_flags,网络设备状态标识。UP表示网卡处于启动状态;BROADCAST表示网卡有广播地址,可以发送广播包;MULTICAST表示可以发送多播包。MTU 1500指的是最大传输单元,以太网的默认值。以太网规定连正文和MAC头合起来不允许超过1500Bytes,如果放不下就要分片传输。

    相关文章

      网友评论

          本文标题:ifconfig:熟悉的陌生命令行

          本文链接:https://www.haomeiwen.com/subject/zjsbwqtx.html