网络访问层是 TCP/IP 协议栈的最底层。它提供物理网络的接口,实现对复杂数据的发送和接收。网络访问层协议为网络接口、数据传输提供了对应的技术规范。
在TCP/IP协议中,网络访问层对应OSI七层网络模型的物理层和数据链路层。下面依次介绍这两个层的作用。
物理层是OSI七层网络模型中的第1层,它虽然处于最底层,却是整个开放系统的基础。在进行数据传输时,物理层的作用是提供传送数据的通路和可靠的环境。对于计算机来说,物理层对应的就是网络适配器。
根据网络适配器的存在方式,可以分为两类。
【实例】显示计算机上的网络适配器信息,执行命令如下:
root@daxueba:~#netwox169
输出信息如下:
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:e46600:0C:29:CA:E4:66
从输出信息可以看到,该计算机中存在两类网络适配器,分别为Lo和 Eth。其中Lo表示回环接口,它是虚拟网络适配器;Eth为以太网网络适配器。如果同类型设备有多个,会在后面添加数字编号。编号从0开始,表示该类型的网络接口的第一个设备。
数据链路层是OSI七层网络模型中的第二层,介于物理层与网络层之间,用于为网络层提供数据传送服务。它定义了数据传输的起始位置,并且通过一些规则来控制这些数据的传输,以保证数据传输的正确性。由于数据链路层完成以上两个独立的任务,所以相应地址划分为两个子层,其含义如下:
物理地址是一种标识符,用来标记网络中的每个设备。同现实生活中收发快递一样,网络内传输的所有数据包都会包含发送万和接收方的物理地址。由于网络设备对物理地址的处理能力有限,物理地址只在当前局域网内有效。所以,接收方的物理地址都必须存在于当前局域网内,否则会导致发送失败。
由于数据包中都会包含发送方和接收方的物理地址,数据包从起始地发送到目的地,为了能够正确地将数据包发送出去,就必须要求MAC地址具有唯一性。因此MAC地址都是由生产厂家在生产时固化在网络硬件中,是硬件预留的地址。
硬件的MAC地址是厂家按照一定的规则,进行设置所产生的。因此,有自己的格式。它采用十六进制数表示,共6个字节(48位),长度为48bit。整个地址可以分为前24位和后24位,代表不同的含义。
由于MAC地址的前24位是生产厂商的标识符,因此可以根据前24位标识符判断出硬件的生产厂商和生产地址。用户可以在一些网站上查询,如 http://mac.51240.com/。
【实例】查询MAC地址00:0C:29:CA:E4:66所对应的厂商。
在上图显示的信息中,可以看到MAC地址00-0C-29-CA-E4-66的厂商是VMware, Inc.可以推断出这是一台虚拟机设备,并且可以看到厂家对应的省份、街道、邮编等信息;
一个局域网或公司中往往存在多台计算机,这些计算机都有自己的 MAC地址和IP地址。其中,IP地址是可变的,而MAC地址一般是不可变的。为了准确地识别主机,用户可以获取计算机对应的MAC地址。
【实例】显示网络主机 MAC地址信息。
1、显示局域网中指定主机的MAC地址信息。例如,显示主机192.168.59.133的MAC地址。
root@daxueba:~# netwox 5 -i 192.168.59.133
192.168.59.133 00:0C:29:DO:21:23
2、显示局域网中所有主机的 MAC地址,执行命令如下:
root@daxueba:~# netwox 5 i 192.168.59.0/24
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:Co: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。
进行数据传输的主机不仅拥有MAC地址,还拥有路由器分配的IP地址,有的还会有自己的主机名、标题等信息。如果知道了主机的MAC地址信息,那么就可以使用netwox工具获取该主机的这些信息。
【实例】已知一主机的MAC地址为00:0C:29:CA:E4:66,显示该主机的其他信息。
1、显示该主机相关信息,执行命令如下:
root@daxueba:~# netwox 4 -e 0o:0c29: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
192.168.59.131
3、如果在显示信息时只想显示主机名信息,可以使用--host选项,执行命令如下:
rootedaxueba:~# 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