使用ifconfig查看树莓派当前接口情况

ifconfig是干嘛的

ip a  列出所有网卡

pi@raspberrypi:~ $ man ifconfig

知其名字,ifconfig取自configure a network interface,即配置网络接口。
在描述中知,如果没有额外的参数,它会显示当前活动接口的状态。
试一下,得到...

在我的树莓派中使用ifconfig得到的输出

ifconfig默认输出内容解释

为方便注释,我将输出结果复制到下方的代码段中

pi@raspberrypi:~ $ ifconfig
# 输出结果显示我的树莓派目前有三个活动的接口:eth0、lo、wlan0
# eth0表示编号为0的以太接口,也就是第0号以太网卡,也就是树莓派那个插网线的口对应的网卡
eth0      Link encap:Ethernet  HWaddr b8:27:eb:6c:af:70
          # Link encap:Ethernet 链路封装格式为以太网封装格式
          # HWaddr b8:27:eb:6c:af:70 硬件地址为b8:27:eb:6c:af:70
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          # UP 网卡处于开启(活动)状态
          # BROADCAST 网卡支持广播
          # MULTICAST 网卡支持多(组)播
          # MTU:1500 MaximumTrasmission Unit,最大传输单元为1500字节
          # Metric:1 路由度量值为1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          # 接收、发送包情况统计
          collisions:0 txqueuelen:1000 
          # collisions:0 冲突情况为0
          # txqueuelen:1000 传输缓冲区长度
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B) 
          # 接收、发送字节情况情况统计

# lo loopback,环回接口,
# 用来允许运行在同一台主机上的客户程序和服务器程序通过TCP/IP进行通信
lo        Link encap:Local Loopback
          # 封装方式这里注明本地环回,当这个接口(网卡)接到IP层的IP数据报时,
          # 不进行封装(当然也不会发出),而直接将其返回对应的接收程序
          inet addr:127.0.0.1  Mask:255.0.0.0
          # inet addr:127.0.0.1 IP地址为:172.0.0.1
          # Mask:255.0.0.0 子网掩码为:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          # inet6 addr: ::1/128 IPv6地址为0:0:0:0:0:0:0:1,
          # 其后的/128是子网掩码的另一种表示方法,表示子网掩码的前128位都是1
          # Scope:Host表示目的地址范围为主机
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:306 errors:0 dropped:0 overruns:0 frame:0
          TX packets:306 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:25688 (25.0 KiB)  TX bytes:25688 (25.0 KiB)
          # 同上一接口注释

wlan0     Link encap:Ethernet  HWaddr b8:27:eb:39:fa:25  
          inet addr:192.168.253.5  Bcast:192.168.253.255  Mask:255.255.255.0
          # Bcast:192.168.253.255 广播地址为192.168.253.255
          inet6 addr: fe80::e568:5216:fdbd:a73d/64 Scope:Link
          # Scope:Link表示目的地址范围为局域网
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          # RUNNING 这里比eth0多了一个RUNNING,表示接口已连接
          RX packets:465728 errors:0 dropped:38 overruns:0 frame:0
          TX packets:206399 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:111588378 (106.4 MiB)  TX bytes:55152876 (52.5 MiB)

pi@raspberrypi:~ $ 

关于Link encap

即该接口封装IP包的方式,如前面展示的Link encap:Ethernet,我自己有两种理解:
一种是你的IP层处理程序将IP报文传给这个接口的处理程序后,这个接口的处理程序会将其封装为如Ethernet格式的以太网帧。
另一种,物理接口上,即网卡层面上,告知你的系统要将数据封装成Ethernet帧的格式后,才能将它给这个物理接口,让这个物理接口转为光电形式后发出,才能被接收方的物理接口识别并接受。

这里就涉及到链路层的数据帧封装方式,即针对不同的线路(有线、无线,有线中的双绞线、网线、光纤,无线中的WiFi、蓝牙等),你需要把上一层的数据到接口这里再封装成不同的格式(具体来讲就是在上层数据的前面再添加一些说明数据,这称为链路层数据帧的头部,还有些还需要在上层数据内容结束后再添加一些说明数据,同理,被称为链路层数据帧的尾部),这样在通过这些不同介质上的不同设备发送和接受的过程中,才能进行合适的处理。甚至于对相同的实体线路,都有不同的封装格式。

网络各层封装图示 注意最底下的一层数据链路层图片来源:[Google图片搜索 以太网封装](https://www.google.com.hk/search?q=%E4%BB%A5%E5%A4%AA%E7%BD%91%E5%B0%81%E8%A3%85&safe=strict&hl=zh-CN&tbm=isch&tbas=0&source=lnt&sa=X&ved=0ahUKEwi-6__GgZTTAhUMLMAKHfKOBTQQpwUIEw&biw=1444&bih=834&dpr=1#imgrc=tuF5rJtUHbVIrM:)[以太网数据格式与封装解封——以太网基础02](http://blog.csdn.net/lg2lh/article/details/51257751)
网络各层封装图示 注意最底下的一层数据链路层图片来源:[Google图片搜索 以太网封装](https://www.google.com.hk/search?q=%E4%BB%A5%E5%A4%AA%E7%BD%91%E5%B0%81%E8%A3%85&safe=strict&hl=zh-CN&tbm=isch&tbas=0&source=lnt&sa=X&ved=0ahUKEwi-6__GgZTTAhUMLMAKHfKOBTQQpwUIEw&biw=1444&bih=834&dpr=1#imgrc=tuF5rJtUHbVIrM:)[以太网数据格式与封装解封——以太网基础02](http://blog.csdn.net/lg2lh/article/details/51257751)
链路层上的两种封装格式 其实这两种格式都是针对采用CSMA/CD媒体接入方法制定的格式,详情可见:[以太网帧格式](http://baike.baidu.com/link?url=gEI9UNvrF5R6AVwe4eTkBA19REjArMiLx3_wt0jnos3yCv02d0r-7OIashmFX6e-y3LeZSLumRVGMqQuavY6jmvHxHgARKapTNJjw7fLuFac4oFpDkUtgOSbDozTb89NvSQfZPbkpv89qk-ArG-Io_)图片来源:[Google图片搜索 以太网封装](https://www.google.com.hk/search?q=%E4%BB%A5%E5%A4%AA%E7%BD%91%E5%B0%81%E8%A3%85&safe=strict&hl=zh-CN&tbm=isch&tbas=0&source=lnt&sa=X&ved=0ahUKEwi-6__GgZTTAhUMLMAKHfKOBTQQpwUIEw&biw=1444&bih=834&dpr=1#imgrc=tuF5rJtUHbVIrM:)[tcp/ip ---以太网和IEEE 802封装](http://www.cnblogs.com/saryli/p/5301349.html)另注:此图是[TCP/IP详解 卷1:协议](https://book.douban.com/subject/1088054/) P16页图2-1,我想这图最早应该是来自这里
链路层上的两种封装格式 其实这两种格式都是针对采用CSMA/CD媒体接入方法制定的格式,详情可见:[以太网帧格式](http://baike.baidu.com/link?url=gEI9UNvrF5R6AVwe4eTkBA19REjArMiLx3_wt0jnos3yCv02d0r-7OIashmFX6e-y3LeZSLumRVGMqQuavY6jmvHxHgARKapTNJjw7fLuFac4oFpDkUtgOSbDozTb89NvSQfZPbkpv89qk-ArG-Io_)图片来源:[Google图片搜索 以太网封装](https://www.google.com.hk/search?q=%E4%BB%A5%E5%A4%AA%E7%BD%91%E5%B0%81%E8%A3%85&safe=strict&hl=zh-CN&tbm=isch&tbas=0&source=lnt&sa=X&ved=0ahUKEwi-6__GgZTTAhUMLMAKHfKOBTQQpwUIEw&biw=1444&bih=834&dpr=1#imgrc=tuF5rJtUHbVIrM:)[tcp/ip ---以太网和IEEE 802封装](http://www.cnblogs.com/saryli/p/5301349.html)另注:此图是[TCP/IP详解 卷1:协议](https://book.douban.com/subject/1088054/) P16页图2-1,我想这图最早应该是来自这里

因为这个格式是制定出来让大家去遵守的规范,所以在上面的图中以太网封装的后面有个括号,里面写着RPC 894,意思就是,在RPC 894这份协议中写明了通过以太网传送的数据应该以这个格式去封装。

常见的链路层数据帧封装格式还有PPP(Point-to-Point Protocol)封装格式等(在学习计算机网络的时候你会学到好几种封装格式)

比如这个主机ifconfig显示的就有一个封装格式为PPP的接口图片来源:[how to get ip address of a PPP(Point-to-Point Protocol) network interface?](http://serverfault.com/questions/623070/how-to-get-ip-address-of-a-ppppoint-to-point-protocol-network-interface)截图有兴趣的可以去看看,网页中还给出了这个接口通常的物理接口样子其实就是我们一般连显示器的串口了

关于Scope

Scope 描述
global 该IP是公共IP,在互联网任一处使用有效
site 仅在IP是IPv6时有效
link 该IP是局域网IP,局域网内有效
host 该IP是本地环回,仅在本主机内使用

Scope的值通常取决于IP而不是通过命令设置。

关于那些大写单词

标示 描述
UP 该接口处于开启状态(连接这个网卡计算机会有反应)
BROADCAST 该接口支持发送广播
RUNNING 该接口处于连接状态(可以传数据啦)
MULTICAST 该接口支持发送多(组)播
ALLMULTI 该接口接收所有多(组)播包
PROMISC 该接口为混杂模式,即该接口接收所有经过它的数据流
... ...

拓展阅读

参考

网络基础知识书籍相关参考

ifconfig显示内容解释相关参考



作者:懂时已不是当时
链接:https://www.jianshu.com/p/db156a38f856
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

猜你喜欢

转载自blog.csdn.net/hwt0101/article/details/80356141