带你读《从实践中学习TCP/IP协议》之二:网络访问层

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
数据传输服务 DTS,数据同步 small 3个月
推荐场景:
数据库上云
数据传输服务 DTS,数据同步 1个月
简介: 传统TCP/IP协议的学习过程漫长而又枯燥乏味。针对这种现状,本书主要结合理论,并通过实际动手实践,带领读者掌握TCP/IP的相关知识。本书结合了Wireshark和netwox工具对TCP/IP协议进行讲解。其中,netwox工具提供了大量模块,允许用户手动创建各种协议的数据包,而Wireshark工具则可以捕获数据包,直观地展现用户创建的数据包。

第2章 网络访问层

  网络访问层是TCP/IP协议栈的最底层。它提供物理网络的接口,实现对复杂数据的发送和接收。网络访问层协议为网络接口、数据传输提供了对应的技术规范。本章将详细讲解网络访问层的构成和相关协议。

2.1 网络访问层的构成

  在TCP/IP协议中,网络访问层对应OSI七层网络模型的物理层和数据链路层。下面依次介绍这两个层的作用。

2.1.1 物理层

  物理层是OSI七层网络模型中的第1层,它虽然处于最底层,却是整个开放系统的基础。在进行数据传输时,物理层的作用是提供传送数据的通路和可靠的环境。对于计算机来说,物理层对应的就是网络适配器。
  根据网络适配器的存在方式,可以分为两类。第一类是物理网络适配器,如有线网卡、无线网卡;第二类是虚拟网络适配器,如宽带拨号连接、VPN连接等。
  【实例2-1】显示计算机上的网络适配器信息,执行命令如下:

root@daxueba:~# netwox 169

  输出信息如下:

Lo0 127.0.0.1 notether
  Lo0 ::1 notether
  Eth0 192.168.59.131 00:0C:29:CA:E4:66
  Eth0 fd15:4ba5:5a2b:1008:20c:29ff:feca:e466 00:0C:29:CA:E4:66
  Eth0 fd15:4ba5:5a2b:1008:61f8:89cd:3207:9d0 00:0C:29:CA:E4:66
  Eth0 fe80::20c:29ff:feca:e466 00:0C:29:CA:E4:66

  从输出信息可以看到,该计算机中存在两类网络适配器,分别为Lo和Eth。其中,Lo表示回环接口,它是虚拟网络适配器;Eth为以太网网络适配器。如果同类型设备有多个,会在后面添加数字编号。编号从0开始,表示该类型的网络接口的第一个设备。

2.1.2 数据链路层

  数据链路层是OSI七层网络模型中的第2层,介于物理层与网络层之间,用来为网络层提供数据传送服务。它定义了数据传输的起始位置,并且通过一些规则来控制这些数据的传输,以保证数据传输的正确性。由于数据链路层完成以上两个独立的任务,所以相应地划分为两个子层,其含义如下:

  • 介质访问控制(Media Access Control,MAC):提供与网络适配器连接的接口。实际上,网络适配器驱动程序通常被称为MAC驱动,而网卡在工厂固化的硬件地址通常被称为MAC地址。

  • 逻辑链路控制(Logical Link Control,LLC):这个子层对经过子网传递的帧进行错误检查,并且管理子网上通信设备之间的链路。

    2.2 网 络 体 系

      网络体系定义了物理网络的构成,以及对应的通信协议。例如,有线网络和无线网络是两种不同的网络体系。本节将详细讲解网络体系的构成和类型。

    2.2.1 体系的构成

      由于网络体系不仅定义了网络构成,还规定了通信方式,所以它包括以下4个方面。

  • 访问方法:定义了计算机使用传输介质的规则。通过这些规则,可以避免数据传输的各种冲突。

  • 数据帧格式:定义了数据传输的格式。所有要传输的数据必须按照该格式进行传输。

  • 布线类型:定义了网络适配器和其他网络设备的连接方式。例如,每台计算机都通过电缆连接到网络设备,从而形成星型网络。

  • 布线规则:定义网络适配器和网络设备连接规范,如网络适配器接口类型和连线长度等。

2.2.2 类型

  由于网络使用的场景和数据传输所使用的终端设备不同,在物理层中识别的网络接口设备也会不同。网络体系主要分为4大类型,每种类型及使用范围如下:

  • IEEE 802.3(以太网):在大多数办公室和家庭中使用的基于线缆的网络,就是常见的有线局域网。

  • IEEE 802.11(无线网络):在办公室、家庭和咖啡厅使用的无线网络技术,如Wi-Fi网络。

  • IEEE 802.16(WiMAX):用于移动通信长距离无线连接的技术。

  • 点到点协议(PPP):使用Modem通过电话线进行连接的技术,如通过拨号方式建立的网络连接。

2.3 物 理 地 址

  物理地址是一种标识符,用来标记网络中的每个设备。同现实生活中收发快递一样,网络内传输的所有数据包都会包含发送方和接收方的物理地址。由于网络设备对物理地址的处理能力有限,物理地址只在当前局域网内有效。所以,接收方的物理地址都必须存在于当前局域网内,否则会导致发送失败。本节将详细讲解物理地址的使用。

2.3.1 MAC地址是预留的

  由于数据包中都会包含发送方和接收方的物理地址,数据包从起始地发送到目的地,为了能够正确地将数据包发送出去,就必须要求MAC地址具有唯一性。因此MAC地址都是由生产厂家在生产时固化在网络硬件中,是硬件预留的地址。

2.3.2 MAC地址格式

  硬件的MAC地址是厂家按照一定的规则,进行设置所产生的。因此,MAC地址拥有自己的格式。它采用十六进制数表示,共6个字节(48位),长度为48bit。整个地址可以分为前24位和后24位,代表不同的含义。

  • 前24位称为组织唯一标识符(Organizationally Unique Identifier,OUI),是由IEEE的注册管理机构给不同厂家分配的代码,区分了不同的厂家。

  • 后24位是由厂家自己分配的,称为扩展标识符。同一个厂家生产的网卡中MAC地址后24位是不同的。

2.3.3 查询MAC厂商

  由于MAC地址的前24位是生产厂商的标识符,因此可以根据前24位标识符判断出硬件的生产厂商和生产地址。用户可以在一些网站上查询,如http://mac.51240.com/
  【实例2-2】查询MAC地址00:0C:29:CA:E4:66所对应的厂商。
  (1)在浏览器中输入网址http://mac.51240.com/ ,如图2.1所示。

image.png

  (2)在“MAC地址”文本框中输入MAC地址00-0C-29-CA-E4-66。然后单击“查询”按钮,查询结果如图2.2所示。

image.png

  从图2.2显示的信息中,可以看到MAC地址00-0C-29-CA-E4-66的厂商是VMware,Inc,由此可以推断出这是一台虚拟机设备,并且可以看到厂家对应的省份、街道、邮编等信息。

2.3.4 查看网络主机MAC地址信息

  一个局域网或公司中往往存在多台计算机,这些计算机都有自己的MAC地址和IP地址。其中,IP地址是可变的,而MAC地址一般是不可变的。为了准确地识别主机,用户可以获取计算机对应的MAC地址。
  【实例2-3】显示网络主机MAC地址信息。
  (1)显示局域网中指定主机的MAC地址信息。例如,显示主机192.168.59.133的MAC地址。执行命令如下:

root@daxueba:~# netwox 5 -i 192.168.59.133

  输出信息如下:

192.168.59.133     00:0C:29:D0:21:23

  输出信息表示主机192.168.59.133的MAC地址为00:0C:29:D0:21:23。
  (2)显示局域网中所有主机的MAC地址,执行命令如下:

root@daxueba:~# netwox 5 -i 192.168.59.0/24

  输出所有主机的MAC地址如下:   

192.168.59.1            00:50:56:C0:00:08
  192.168.59.2            00:50:56:EA:F3:A1
  192.168.59.131        00:0C:29:CA:E4:66
  192.168.59.132        00:0C:29:C4:8A:DE
  192.168.59.133        00:0C:29:D0:21:23
  192.168.59.254        00:50:56:F0:69:32

  以上输出信息显示了局域网中所有启用主机的IP地址和对应的MAC地址。
  (3)在显示局域网中所有主机的MAC地址信息时,有时由于暂时没有发现主机,等待较长的时间,也不会有任何输出信息。为了能够更好地了解当前的进度,可以使用-u选项,显示未发现主机的MAC地址的信息,进而可以查看扫描进度。执行命令如下:

root@daxueba:~# netwox 5 -i 192.168.59.0/24 -u

  输出信息如下:

192.168.59.0        unresolved
  192.168.59.1        00:50:56:C0:00:08
  192.168.59.2        00:50:56:EA:F3:A1
  192.168.59.3        unresolved
  …                                #省略其他信息
  192.168.59.131        00:0C:29:CA:E4:66
  192.168.59.132        00:0C:29:C4:8A:DE
  192.168.59.133        00:0C:29:D0:21:23
  192.168.59.134        unresolved
  192.168.59.135        unresolved
  …                                #省略其他信息
  192.168.59.254        00:50:56:F0:69:32
  192.168.59.255        unresolved

  从输出信息可以看到,程序对局域网中的所有主机进行了扫描,主机IP地址为192.168.59.0到192.168.59.255。如果扫描的主机存在,则给出对应的MAC地址;如果主机不存在,则显示为unresolved。

2.3.5 根据MAC地址获取主机其他信息

  进行数据传输的主机不仅拥有MAC地址,还拥有路由器分配的IP地址,有的还会有自己的主机名、标题等信息。如果知道了主机的MAC地址信息,那么就可以使用netwox工具获取该主机的这些信息。
  【实例2-4】已知一主机的MAC地址为00:0C:29:CA:E4:66,显示该主机的其他信息。
  (1)显示该主机相关信息,执行命令如下:

root@daxueba:~# netwox 4 -e 00:0C:29:CA:E4:66

  输出信息如下:

IP address:  192.168.59.131
  Hostname:    localhost
  Hostnames:   localhost

  从输出信息可以看到,该主机的IP地址为192.168.59.131,主机名为localhost。
  (2)如果在显示信息时只想显示IP地址信息,可以使用--ip选项,执行命令如下:

root@daxueba:~# netwox 4 -e 00:0C:29:CA:E4:66 --ip

  
  输出信息只有IP地址信息,如下:

192.168.59.131

  
  (3)如果在显示信息时只想显示主机名信息,可以使用--host选项,执行命令如下:

root@daxueba:~# netwox 4 -e 00:0C:29:CA:E4:66 --host

  
  输出信息只有主机名信息,如下:

localhost

  (4)如果在显示信息时只想显示标题信息,可以使用--title选项,执行命令如下:

root@daxueba:~# netwox 4 -e 00:0C:29:CA:E4:66 --title

  执行命令后,如果没有输出信息,表示该主机没有标题信息。

2.4 以 太 网

  以太网是现有局域网最常用的通信协议标准,其网络结构通常为星型结构。在网络中,计算机使用传输介质进行连接,网络数据通过传输介质进行传输来完成整个通信。本节将详细讲解以太网中的相关概念。

2.4.1 以太网连接

  以太网是目前最为广泛的局域网技术,下面具体讲解网络设备之间连接和数据传输的方法,以及以太网中的两个网络设备进行连接的方法。
  1.拓扑结构
  计算机网络的拓扑结构是引用拓扑学中研究与大小、形状无关的点、线关系的方法。它把网络中的计算机和通信设备抽象为一个点,把传输介质抽象为一条线,而由点和线组成的几何图形就是计算机网络的拓扑结构。以太网结构主要分为总线型和星型两种。

  • 总线型:是指所有计算机通过一条同轴电缆进行连接。

  • 星型:是指所有计算机都连接到一个中央网络设备上(如交换机)。

  2.传输介质
  不论是总线型还是星型,计算机和通信设备之间进行数据传输都需要有传输介质。以太网采用了多种连接介质,如同轴缆、双绞线和光纤等。其中,双绞线多用于从主机到集线器或交换机的连接,而光纤则主要用于交换机间的级联和交换机到路由器间的点到点链路上。同轴缆作为早期的主要连接介质,现在已经逐渐被淘汰。
  3.工作机制
  有了传输介质以后,以太网中的数据就可以借助传输介质进行传输了。以太网采用附加冲突检测的载波帧听多路访问(CSMA/CD)机制,以太网中所有节点都可以看到在网络中发送的所有信息。因此,以太网是一种广播网络。它需要判断计算机何时可以把数据发送到访问介质。通过使用CSMA/CD,所有计算机都可以监视传输介质的状态,在传输之前等待线路空闲。如果两台计算机尝试同时发送数据,就会发生冲突,计算机会停止发送,等待一个随机的时间间隔,然后再次尝试发送。
  当以太网中的一台主机要传输数据时,工作过程如下:
  (1)监听信道上是否有信号在传输。如果有,表示信道处于忙状态,则继续帧听,直到信道空闲为止。
  (2)若没有监听到任何信号,就传输数据。
  (3)传输数据的时候继续监听。如果发现冲突,则执行退避算法。随机等待一段时间后,重新执行步骤(1)。当冲突发生时,涉及冲突的计算机会返回监听信道状态。若未发现冲突,则表示发送成功。

2.4.2 以太帧结构

  以太网链路传输的数据包称做以太帧。在以太网中,网络访问层的软件必须把数据转换成能够通过网络适配器硬件进行传输的格式。
  1.工作机制
  当以太网软件从网络层接收到数据报之后,需要完成如下操作:
  (1)根据需要把网际层的数据分解为较小的块,以符合以太网帧数据段的要求。以太网帧的整体大小必须在64~1518字节之间(不包含前导码)。有些系统支持更大的帧,最大可以支持9000字节。
  (2)把数据块打包成帧。每一帧都包含数据及其他信息,这些信息是以太网网络适配器处理帧所需要的。
  (3)把数据帧传递给对应于OSI模型物理层的底层组件,后者把帧转换为比特流,并且通过传输介质发送出去。
  (4)以太网上的其他网络适配器接收到这个帧,检查其中的目的地址。如果目的地址与网络适配器的地址相匹配,适配器软件就会处理接收到的帧,把数据传递给协议栈中较高的层。
  2.以太帧结构
  以太帧起始部分由前同步码和帧开始定界符组成。后面紧跟着一个以太网报头,以MAC地址说明目的地址和源地址。帧的中部是该帧负载的包含其他协议报头的数据包,如IP协议。以太帧由一个32位冗余校验码结尾,用于检验数据传输是否出现损坏。以太帧结构如图2.3所示。

image.png

  图2.3中每个字段含义如下:

  • 前同步码:用来使接收端的适配器在接收MAC帧时能够迅速调整时钟频率,使它和发送端的频率相同。前同步码为7个字节,1和0交替。

  • 帧开始定界符:帧的起始符,为1个字节。前6位1和0交替,最后的两个连续的1表示告诉接收端适配器:“帧信息要来了,准备接收”。

  • 目的地址:接收帧的网络适配器的物理地址(MAC地址),为6个字节(48比特)。作用是当网卡接收到一个数据帧时,首先会检查该帧的目的地址,是否与当前适配器的物理地址相同,如果相同,就会进一步处理;如果不同,则直接丢弃。

  • 源地址:发送帧的网络适配器的物理地址(MAC地址),为6个字节(48比特)。

  • 类型:上层协议的类型。由于上层协议众多,所以在处理数据的时候必须设置该字段,标识数据交付哪个协议处理。例如,字段为0x0800时,表示将数据交付给IP协议。

  • 数据:也称为效载荷,表示交付给上层的数据。以太网帧数据长度最小为46字节,最大为1500字节。如果不足46字节时,会填充到最小长度。最大值也叫最大传输单元(MTU)。在Linux中,使用ifconfig命令可以查看该值,通常为1500。

  • 帧检验序列FCS:检测该帧是否出现差错,占4个字节(32比特)。发送方计算帧的循环冗余码校验(CRC)值,把这个值写到帧里。接收方计算机重新计算CRC,与FCS字段的值进行比较。如果两个值不相同,则表示传输过程中发生了数据丢失或改变。这时,就需要重新传输这一帧。

2.4.3 构建以太帧

  通过上一节的学习了解了以太帧的结构。用户可以根据需要设置以太帧的字段值,从而构建以太帧。netwox工具中编号为32的模块提供了以太帧构建功能。
  【实例2-5】构建以太网数据帧。
  (1)查看以太网数据帧,执行命令如下:   

root@daxueba:~# netwox 32

  
  输出信息如下:

Ethernet________________________________________________________.
  | 00:0C:29:CA:E4:66->00:08:09:0A:0B:0C type:0x0000             |
  |____________________________________________________________|

  上述输出信息中的00:0C:29:CA:E4:66为源MAC地址,是当前主机的MAC地址;00:08:09:0A:0B:0C为目标MAC地址,0x0000为以太网类型。
  (2)构建以太帧,设置源MAC地址为00:0c:29:c4:8a:de,目标MAC地址为01:02:03: 04:05:06,执行命令如下:

root@daxueba:~# netwox 32 -a 00:0c:29:c4:8a:de -b 01:02:03:04:05:06

  输出信息如下:

Ethernet________________________________________________________.
  | 00:0C:29:C4:8A:DE->01:02:03:04:05:06 type:0x0000              |
  |_____________________________________________________________|

  从输出信息可以看到,源MAC地址由原来的00:0C:29:CA:E4:66变为了00:0C:29: C4:8A:DE;目标MAC地址由原来的00:08:09:0A:0B:0C变为了01:02:03:04:05:06。
  (3)为了验证构建的以太帧,通过Wireshark工具进行抓包。在链路层中可以看到伪造的源MAC地址和目标MAC地址,信息如下:

Ethernet II, Src: Vmware_c4:8a:de (00:0c:29:c4:8a:de), Dst: Woonsang_04:05:
  06(01:02:03:04:05:06)

  
  (4)为了不被其他主机发现,在构造数据包时,可以指定假的源MAC地址。但是,每构造一次只能发送一个数据包。如果需要发送多个数据包,就需要构造多次。为了方便,可以使用macchanger工具临时修改MAC地址,这样就不需要每次构造假的源MAC地址了。例如,将当前主机的MAC地址修改为00:0c:29:aa:e0:28,执行命令如下:

Current MAC:       00:0c:29:ca:e4:66 (VMware, Inc.)
  Permanent MAC:     00:0c:29:ca:e4:66 (VMware, Inc.)
  New MAC:           00:0c:29:aa:e0:28 (VMware, Inc.)

  
  以上输出信息表示当前主机原来的MAC地址为00:0c:29:ca:e4:66,修改后的MAC地址为00:0c:29:aa:e0:28。
  (5)再次使用netwox工具进行发包,默认使用修改后的MAC地址作为源MAC地址,如下:

root@daxueba:~# netwox 32

  输出信息如下:

Ethernet_________________________________________________
  | 00:0C:29:AA:E0:28->00:08:09:0A:0B:0C type:0x0000              |
  |_______________________________________________________ |

2.4.4 以太帧洪水攻击

  交换机为了方便数据传输,通常会存储每个端口所对应的MAC地址,形成一张表。当交换机收到计算机发来的以太帧时,就会查看帧中的源MAC地址,并查找存储的表。如果表中存在该MAC地址,就直接转发数据。如果没有,则将该MAC地址存入该表中。
  当其他计算机向这个MAC地址发送数据时,可以快速决定向哪个端口发送数据。由于该表不可能是无穷大的,所以当达到一定数量时,将不会储存其他新的MAC地址。再有新的主机发来数据帧时,部分交换机将不再查找对应的端口,而是以广播的形式转发给所有的端口。这样,就使其他主机可以接收到该数据帧了。
  netwox工具提供编号为75的模块,用来实现以太帧洪水攻击功能。它可以伪造大量的以太网数据包,填满交换机的存储表,使交换机失去正确的转发功能。
  【实例2-6】实施以太帧洪水攻击,执行命令如下:

root@daxueba:~# netwox 75

  
  执行命令后没有任何输出信息,但是会发送大量的以太网数据包。使用Wireshark工具进行抓包,如图2.4所示。图中捕获的数据包为以太帧洪水攻击产生的数据包。

image.png

2.5 网络配置信息

  计算机的网络配置信息包含网络设备接口、IP地址、MAC地址和掩码等信息。为了方便用户查看计算机中的这些信息,netwox工具提供了对应的模块,用于获取网络配置信息。

2.5.1 显示网络配置信息

  为了了解当前网络的相关信息,netwox工具提供了编号为1的模块。它可以显示当前主机的网络接口信息、主机的IP地址信息,以及路由表等信息。
  【实例2-7】显示网络配置信息,执行命令如下:

root@daxueba:~# netwox 1

  执行命令后将显示当前网络设备信息。由于信息较多,下面对每个部分进行讲解。
  (1)显示网络设备接口列表信息如下:  

############################## Devices ###############################
  nu     dev       ethernet_hwtype       mtu       real_device_name
  1      Lo0       loopback              65536     lo
  2      Eth0      00:0C:29:CA:E4:66     1500      eth0

  以上输出信息中每列含义如下:

  • nu:设备编号。

  • dev:设备接口名称的简单形式。

  • ethernet_hwtype:以太网地址或硬件类型。

  • mtu:MTU值。

  • real_device_name:设备接口名称的真正形式。

  (2)显示IP地址列表信息如下:

################################# IP #################################
  nu     ip                 /netmask                        ppp point_to_point_with
  1      127.0.0.1          /255.0.0.0                          0
  1      ::1/128                                                0
  2      192.168.59.131     /255.255.255.0                      0
  2      fd15:4ba5:5a2b:1008:20c:29ff:feca:e466/64      0
  2      fe80::20c:29ff:feca:e466/64                        0
  2      fd15:4ba5:5a2b:1008:4c3c:fda9:c3dc:499a/64        0

  以上输出信息中每列含义如下:

  • nu:与此地址关联的设备编号。

  • ip:IP地址。

  • netmask:子网掩码。

  • ppp:点对点的地址。

  • point_to_point_with:远程端点的地址。

  (3)IP4 ARP缓存或IP6 邻居信息如下:

######################### ArpCache/Neighbor ########################## 
  nu     ethernet                  ip
  2      00:0C:29:C4:8A:DE         192.168.59.132
  2      00:0C:29:CA:E4:66         192.168.59.131
  2      00:0C:29:CA:E4:66 fd15:4ba5:5a2b:1008:20c:29ff:feca:e466
  2      00:0C:29:CA:E4:66 fd15:4ba5:5a2b:1008:4c3c:fda9:c3dc:499a
  2      00:0C:29:CA:E4:66 fe80::20c:29ff:feca:e466
  2      00:50:56:EA:F3:A1         192.168.59.2
  2      00:50:56:EA:F3:A1 fe80::250:56ff:fec0:2222
  2      00:50:56:F0:69:32         192.168.59.254

  以上输出信息中每列含义如下:

  • nu:与此条目关联的设备编号。

  • ethernet:计算机的以太网地址。

  • ip:计算机的IP地址。

  (4)显示路由信息如下:

############################## Routes ################################ 
  nu     destination        /netmask         source          gateway           metric
  1      127.0.0.1          /255.255.255.255     local             0
  2      192.168.59.131     /255.255.255.255     local             0
  2      192.168.59.0       /255.255.255.0     192.168.59.131     100
  1      127.0.0.0          /255.0.0.0           127.0.0.1        0
  2      0.0.0.0             /0.0.0.0                 192.168.59.131     192.168.59.2   100
  1      ::1/128                                 local             0
  2      fd15:4ba5:5a2b:1008:20c:29ff:feca:e466/128 local    0
  2      fe80::20c:29ff:feca:e466/128            local         0
  2      fd15:4ba5:5a2b:1008:4c3c:fda9:c3dc:499a/128 local   0
  2      fd15:4ba5:5a2b:1008::/64   fd15:4ba5:5a2b:1008:20c:29ff:feca:e466  0
  2      fe80::/64             fe80::20c:29ff:feca:e466         0
  2      fd15:4ba5:5a2b:1008::/64  fd15:4ba5:5a2b:1008:4c3c:fda9:c3dc:499a  0
  2      fd15:4ba5:5a2b:1008::/64  fd15:4ba5:5a2b:1008:20c:29ff:feca:e466 
  fe80::250:56ff:fec0:2222 100
  2      ::/0           fe80::20c:29ff:feca:e466 fe80::250:56ff:fec0:2222 100

  以上输出信息中每列含义如下:

  • nu:与此条目关联的设备编号。

  • destination:目标地址。

  • netmask:掩码。

  • source:源IP地址或本地路由。

  • gateway:网关。

  • metric:路线度量。

2.5.2 显示网络调试信息

  如果想了解更多的网络信息,netwox工具还提供了编号为2的模块,用于显示网络调试信息。
  【实例2-8】显示网络调试信息,执行命令如下:

root@daxueba:~# netwox 2

  执行命令后可以看到,不仅显示了网络配置信息,还显示了调试信息:

Netwox toolbox version 5.39.0.                        #版本信息
  Netwib library version 5.39.0.
  
  ####****####****####****####****####
  NETWIBDEF_SYSNAME="Linux"
  NETWIBDEF_SYSARCH="amd64"
  NETWIBDEF_ARCH_ENDIAN=0
  NETWIBDEF_ARCH_BITS=64
  NETWIBDEF_ARCH_ALIGN=1
                                                          #省略其他信息
  NETWIBDEF_HAVEVAR_SC_GETPW_R_SIZE_MAX=1
  NETWIBDEF_HAVEVAR_SC_GETGR_R_SIZE_MAX=1
  Error 0 : ok                                            #0个错误
  
  ####****####****####****####****####
  ############################## Devices ################################
  nu     dev       ethernet_hwtype       mtu       real_device_name
  1      Lo0       loopback              65536     lo
  2      Eth0      00:0C:29:CA:E4:66     1500      eth0
  ################################# IP ##################################
  nu     ip                 /netmask                        ppp point_to_point_with
  1      127.0.0.1          /255.0.0.0                          0
  1      ::1/128                                                0
  2      192.168.59.131     /255.255.255.0                      0
  2      fd15:4ba5:5a2b:1008:20c:29ff:feca:e466/64      0
  2      fe80::20c:29ff:feca:e466/64                        0
  2      fd15:4ba5:5a2b:1008:4c3c:fda9:c3dc:499a/64        0
  ########################## ArpCache/Neighbor ##########################
  nu     ethernet                  ip
  2      00:0C:29:C4:8A:DE         192.168.59.132
  2      00:0C:29:CA:E4:66         192.168.59.131
  2      00:0C:29:CA:E4:66 fd15:4ba5:5a2b:1008:20c:29ff:feca:e466
  2      00:0C:29:CA:E4:66 fd15:4ba5:5a2b:1008:4c3c:fda9:c3dc:499a
  2      00:0C:29:CA:E4:66 fe80::20c:29ff:feca:e466
  2      00:50:56:EA:F3:A1         192.168.59.2
  2      00:50:56:EA:F3:A1 fe80::250:56ff:fec0:2222
  2      00:50:56:F0:69:32         192.168.59.254
  ############################## Routes #################################
  nu     destination        /netmask         source        gateway        metric
  1      127.0.0.1          /255.255.255.255     local                          0
  2      192.168.59.131    /255.255.255.255     local                             0
  2      192.168.59.0       /255.255.255.0       192.168.59.131                 100
  1      127.0.0.0          /255.0.0.0           127.0.0.1                     0
  2      0.0.0.0            /0.0.0.0                 192.168.59.131   192.168.59.2  100
  1      ::1/128                                 local                           0
  2      fd15:4ba5:5a2b:1008:20c:29ff:feca:e466/128 local                    0
  2      fe80::20c:29ff:feca:e466/128            local                       0
  2      fd15:4ba5:5a2b:1008:4c3c:fda9:c3dc:499a/128 local               0
  2      fd15:4ba5:5a2b:1008::/64  fd15:4ba5:5a2b:1008:20c:29ff:feca:e466   0
  2      fe80::/64      fe80::20c:29ff:feca:e466                               0
  2      fd15:4ba5:5a2b:1008::/64  fd15:4ba5:5a2b:1008:4c3c:fda9:c3dc:499a  0
  2      fd15:4ba5:5a2b:1008::/64  fd15:4ba5:5a2b:1008:20c:29ff:feca:e466 
  fe80::250:56ff:fec0:2222 100
  2      ::/0            fe80::20c:29ff:feca:e466 fe80::250:56ff:fec0:2222 100
  Error 0 : ok
   hint: errno = 19 = No such device
   hint: this is not an IPv4 address: fe80::250:56ff:fec0:2222
  
  ####****####****####****####****####
  
  :::: After devices_ioctl ::::                    # devices_ioctl信息
   $$$ devices $$$
    d=0,lo, m=65536 t=loopback
    d=0,eth0, m=1500 t=ethernet>00:0C:29:CA:E4:66
    d=0,lo, m=65536 t=loopback
    d=0,eth0, m=1500 t=ethernet>00:0C:29:CA:E4:66
  
   $$$ ip $$$
    d=0,lo i=127.0.0.1/255.0.0.0 p=false
    d=0,eth0 i=192.168.59.131/255.255.255.0 p=false
  
   $$$ arpcache $$$
  
   $$$ routes $$$
  
  :::: After procnetifinet6 ::::                    # procnetifinet6信息
   $$$ devices $$$
    d=0,lo, m=65536 t=loopback
    d=0,eth0, m=1500 t=ethernet>00:0C:29:CA:E4:66
    d=0,lo, m=65536 t=loopback
    d=0,eth0, m=1500 t=ethernet>00:0C:29:CA:E4:66
  
   $$$ ip $$$
    d=0,lo i=127.0.0.1/255.0.0.0 p=false
    d=0,eth0 i=192.168.59.131/255.255.255.0 p=false
    d=0,lo i=::1/128 p=false
    d=0,eth0 i=fd15:4ba5:5a2b:1008:20c:29ff:feca:e466/64 p=false
    d=0,eth0 i=fe80::20c:29ff:feca:e466/64 p=false
    d=0,eth0 i=fd15:4ba5:5a2b:1008:4c3c:fda9:c3dc:499a/64 p=false
  …                                                #省略其他信息
  $$$ routes $$$
    d=1,lo i=127.0.0.1/255.255.255.255 s=false g=false m=0
    d=2,eth0 i=192.168.59.131/255.255.255.255 s=false g=false m=0
    d=2,eth0 i=192.168.59.0/255.255.255.0 s=true,192.168.59.131 g=false m=100
    d=1,lo i=127.0.0.0/255.0.0.0 s=true,127.0.0.1 g=false m=0
    d=2,eth0 i=::/0 s=true,fe80::20c:29ff:feca:e466 g=true,fe80::250:56ff:
   fec0:2222 m=100
  Error 0 : ok
   hint: errno = 19 = No such device
   hint: this is not an IPv4 address: fe80::250:56ff:fec0:2222
  
  ####****####****####****####****####
  END

    

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
相关文章
|
23天前
|
安全 网络安全 数据安全/隐私保护
访问控制列表(ACL)是网络安全中的一种重要机制,用于定义和管理对网络资源的访问权限
访问控制列表(ACL)是网络安全中的一种重要机制,用于定义和管理对网络资源的访问权限。它通过设置一系列规则,控制谁可以访问特定资源、在什么条件下访问以及可以执行哪些操作。ACL 可以应用于路由器、防火墙等设备,分为标准、扩展、基于时间和基于用户等多种类型,广泛用于企业网络和互联网中,以增强安全性和精细管理。
116 7
|
13天前
|
网络协议
网络通信的基石:TCP/IP协议栈的层次结构解析
在现代网络通信中,TCP/IP协议栈是构建互联网的基础。它定义了数据如何在网络中传输,以及如何确保数据的完整性和可靠性。本文将深入探讨TCP/IP协议栈的层次结构,揭示每一层的功能和重要性。
39 5
|
23天前
|
网络协议 网络安全 网络虚拟化
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算
本文介绍了十个重要的网络技术术语,包括IP地址、子网掩码、域名系统(DNS)、防火墙、虚拟专用网络(VPN)、路由器、交换机、超文本传输协议(HTTP)、传输控制协议/网际协议(TCP/IP)和云计算。通过这些术语的详细解释,帮助读者更好地理解和应用网络技术,应对数字化时代的挑战和机遇。
66 3
|
23天前
|
存储 网络协议 安全
30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场
本文精选了 30 道初级网络工程师面试题,涵盖 OSI 模型、TCP/IP 协议栈、IP 地址、子网掩码、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN 等基础知识和技术,帮助小白们充分准备面试,顺利踏入职场。
66 2
|
1月前
|
网络协议 安全 Go
Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
【10月更文挑战第28天】Go语言进行网络编程可以通过**使用TCP/IP协议栈、并发模型、HTTP协议等**方式
49 13
|
1月前
|
网络协议 算法 网络性能优化
计算机网络常见面试题(一):TCP/IP五层模型、TCP三次握手、四次挥手,TCP传输可靠性保障、ARQ协议
计算机网络常见面试题(一):TCP/IP五层模型、应用层常见的协议、TCP与UDP的区别,TCP三次握手、四次挥手,TCP传输可靠性保障、ARQ协议、ARP协议
|
2月前
|
网络协议 算法 数据格式
【TCP/IP】UDP协议数据格式和报文格式
【TCP/IP】UDP协议数据格式和报文格式
148 3
|
2月前
|
XML JSON 网络协议
【TCP/IP】自定义应用层协议,常见端口号
【TCP/IP】自定义应用层协议,常见端口号
34 3
|
2月前
|
网络协议 Ubuntu 前端开发
好好的容器突然起不来,经定位是容器内无法访问外网了?测试又说没改网络配置,该如何定位网络问题
本文记录了一次解决前端应用集成到主应用后出现502错误的问题。通过与测试人员的沟通,最终发现是DNS配置问题导致的。文章详细描述了问题的背景、沟通过程、解决方案,并总结了相关知识点和经验教训,帮助读者学习如何分析和定位网络问题。
113 0
|
7月前
|
机器学习/深度学习 人工智能 网络协议
TCP/IP五层(或四层)模型,IP和TCP到底在哪层?
TCP/IP五层(或四层)模型,IP和TCP到底在哪层?
124 4