[关闭]
@artman328 2019-08-26T01:06:03.000000Z 字数 13108 阅读 2853

艺夫讲义 ——

《计算机网络基础》(程序员适用)

network


第一章 数学基础

1.1 十进制 二进制 八进制 十六进制

1.1.1 十进制

用十个单一符号表示数目,0,1,2,3,4,5,6,7,8,9。
第十个,没有符号可用,用已有符号组合表示:10,“逢十进一”。
因此,多位符号构成的数字,由于所在位置不同,相同数字表示的实际数目大小不同,称为具有不同“位权”。
如:8888,从最右到最左,第一位就表示8,第二位则表示80,第三位表示800,第四位表示8000,相当于:

也就是说,从右向左的第n位数字的位权是

8位十进制数,从 0000 0000 到 9999 9999 共可表示 99999999 + 1 = 1 0000 0000 个数字。


结论:n 位 10 进制数最多能表达 个数字,最大数是

1.1.2 二进制

用两个单一符号表示数目,0,1。
第二个,没有符号可用,用已有符号组合表示:10,“逢二进一”。

参照十进制,多位二进制的数的第 n 位数字的位权就当是:。那么,二进制的 1101(用 1101B 表示) 就表示:

8位二进制数,从 0000 0000 到 1111 1111B 共可表示 11111111B + 1 = 100000000B 个数字,最大值 11111111B。



结论:n 位 2 进制数最多能表达 个数字,最大数是

1.1.3 十六进制

用十六个符号表示数目,0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F。
第十六个,没有符号可用,用已有符号组合表示:10,“逢十六进一”。

参照十进制,多位十六进制的数的第 n 位数字的位权就当是:。那么,十六进制的 981F (用0x981F)就表示:

2位十六进制数,从 00 到 0xFF 共可表示 0xFF + 1 = 0x100 个数字,最大值 0xFF。



结论:n 位 16 进制数最多能表达 个数字,最大数是

1.2 常用数制转换

1.2.1 二进制与十六进制

  1. 二进制到十六进制
    方法:整数部分,从右向左,划出4位一组,不足的高位补0;小数部分,从左向右,划出4位一组,不足的低位补0。将每 4 位转换为相应的十六进制符号即可。
    如:

  2. 十六进制到二进制
    将每位十六进制转换为四位二进制数即可。

1.2.2 十进制与二进制

b2d.jpeg-18.1kB

1.3 二进制的逻辑运算

基本规则:

1 & 1 = 1
1 & 0 = 0
0 & 1 = 0
0 & 0 = 0

1 | 1 = 1
1 | 0 = 1
0 | 1 = 1
0 | 0 = 0

1 XOR 1 = 0
1 XOR 0 = 1
0 XOR 1 = 1
0 XOR 0 = 0

第二章 互联网上的结点地址

2.1 IP 地址

IP,Internet Protocol,即互联网协议,是互联网的核心协议之一。根据该协议,所有联网的设备(结点)都应当有自己的地址以表明自己的身份,这就是 IP 地址。
IP 地址(第四版)的格式如下,由 4 个字节的二进制数字构成:
xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx
其中 x = {0|1}
因为一个字节表示的最大数字是255,其表示的范围可用:
0.0.0.0 ~ 255.255.255.255 来表示。

2.2 私有地址与公共地址

以下地址范围属于私有地址,每个局域网都可使用它们。

10.0.0.0/8 = 10.0.0.0 to 10.255.255.255
(00001010.00000000.00000000.00000000 - 00001010.11111111.11111111.11111111)

172.16.0.0/12 = 172.16.0.0 - 172.31.255.255
(10101100.00010000.00000000.00000000 - 10101100.00011111.11111111.11111111)

192.168.0.0/16 = 192.168.0.0 - 192.168.255.255
(11000000.10100100.00000000.00000000 - 11000000.10100100.11111111.11111111)

除以上地址段(及某些特殊地址)外,均为公共地址。
私有地址不能直接与互联网上的具有公共地址的设备通讯,需要经过联接到互联网的具有公共地址的路由设备才能与其它具有公共地址的设备通讯。

2.3 子网掩码

用于联网设备查找“邻居”——同一网络中的设备。如果一台设备要传递数据给另一台设备,需要指明它的 IP 地址。根据 IP 地址,发送数据的设备需要判断对方是否与自己在“同一网络”,因为在与不在,采取的行为有所不同。
为了判断对方与自己是否在同一网络,发送方设备需要用一个叫做“子网掩码”的数据去分别与对方的 IP 地址和自己的 IP 地址作“与”运算,运算的结果就是各自所在网络的地址。如果得到的结果一致,说明大家就在同一个网络内。
例如:IP 为 192.168.10.10, 子网掩码为 255.255.255.0 的设备要向 IP 为 192.168.1.30 的设备发送数据,发送方会做出以下判断:
对方的网络地址(以发送方的掩码计算):
192.168.1.30 & 255.255.255.0 = 192.168.1.0

己方的网络地址:
192.168.10.10 & 255.255.255.0 = 192.168.10.0

由于结果不一致,双方不在同一网络。
子网掩码还有一种表示方法,就是将掩码的高位字节的1的位数,用于记录掩码。如:255.255.255.0,高位3个字节为全1,每个字节为8位,则 1 的位数一共是: 位,这样,上述发送数据的设备,IP 结合掩码的表示方法为:192.168.10.10/24。

思考:设备 172.28.202.108/16 的掩码及网络地址是多少?

2.3 网络地址与广播地址

每个网络的第一个地址是网络地址,最后一个地址是广播地址,它们是保留地址,不能赋予任何设备。
如:
192.168.1.0/24 是网络地址,192.168.1.255/24 是广播地址。

当 192.168.1.30/24 的设备向 IP 地址 192.168.1.255/24 发送数据时,因为这是个广播地址,处于 192.168.1.0/24 网络的所有设备都将见到此数据,并会主动接收。这叫广播消息,192.168.1.0/24 网络就是一个广播域。

2.4 特殊地址

0.0.0.0 -- 在许多配置文件中用于同时指定主机的全部 IP 地址。
127.0.0.1 -- 本机回环地址(localhost)
169.254.0.0/16 -- 本地链路地址(无法与外界连接,DHCP 失效时经常使用此范围地址)

2.5 子网

某部门分配到一个网络,192.168.0.0/24,由于其掩码是 255.255.255.0,其网络地址就是 192.168.0.0,广播地址就是 192.168.0.255,其余的地址:192.168.0.1 ~ 192.168.0.254 是可用于主机的 IP 地址总和,一共 个地址。

所有主机都将掩码设置成 255.255.255.0,则所有主机均处于同一网段,如 192.168.0.10/24 的主机与 192.168.0.220/24 的主机,是处于同一网段的,因为:
192.168.0.10 & 255.255.255.0 = 192.168.0.0
192.168.0.220 & 255.255.255.0 = 192.168.0.0
两台主机网络地址相同。

但如果大家被要求将掩码全部设置成 255.255.255.128 (11111111.11111111.11111111.10000000)呢?我们再考查一下上面的两台主机。
192.168.0.00001010 & 255.255.255.10000000 = 192.168.0.0
192.168.0.11011100 & 255.255.255.10000000 = 192.168.0.128
可见,现在两台主机就不在同一网段了。

事实上,掩码是 11111111.11111111.11111111.10000000,则可分出:
1) 192.168.0.0/25:
192.168.0.00000000(0) ~ 192.168.0.01111111(127) 网段,其中 192.168.0.0 是网络地址,192.168.0.127 是广播地址,设备可用 126 个地址。
2) 192.168.0.128/25:
192.168.0.10000000(128) ~ 192.168.0.11111111(255) 网段,其中 192.168.0.128 是网络地址,192.168.0.255 是广播地址,设备可用 126 个地址。

以上两个网段,就称为 192.168.0.0/24 的子网。子网就是将原有网段的掩码位数增加以获得的不同网段。

其余见下图。

subnet.png-75.3kB

2.6 IP 地址获取

2.6.1 手动配置

配置项 含义 举例
IP地址 设备在网络中的“身份证号” 172.25.10.10
子网掩码 用于判断需要通讯的对方是否与自己在同一网络 255.255.255.0
默认网关 当需要通讯的对方不在自己同一个网络时,将数据转交给此“中介”设备 172.25.10.254
DNS 域名服务器地址,当使用域名指定通讯的对方时,去此服务器查询对方的IP地址,可指明多个 61.166.10.123

2.6.2 自动获取

通过 DHCP(Dynamic Host Configuration Protocol )协议自动从网络中的 DHCP 服务器获取。

DHCP工作过程

如果设备被配置为自动获取 IP,第一次启动时,它会以广播的方式发送 DHCP discover 信息来寻找DHCP服务器,网络上每一台安装了TCP/IP协议的主机都会接收到这个广播信息,但是只有DHCP服务器才会给出应答。

DHCP 服务器管理着一个地址池,当服务器收到电脑发送的 DHCP discover 信息后,它就会从尚未分配的 IP 地址池中挑出一个空闲地址,并将此 IP 地址和其他设置信息通过 DHCP offer 应答传送给请求设备。

设备接收到第一条(网络中可能有多台 DHCP 服务器)这类信息,然后以广播的方式回答一个 DHCP request 请求信息,该信息包含所选定的DHCP服务器IP,请求的ip地址等内容。

当 DHCP 服务器收到 DHCP request 请求信息后,便向请求设备发送一个包含它所提供的IP地址和其他设置的 DHCP ack 确认信息,告诉设备可以使用它提供的ip地址。然后设备便将TCP/IP协议与网卡绑定。

设备选中了一台 DHCP 服务器后,其他的服务器提供的 ip 地址就会在这个时候收回,给其他设备用。

以后DHCP客户端每次重新登录网络时,就不需要再发送DHCP discover发现信息了,而是直接发送包含前一次所分配的IP地址的 DHCP request 请求信息。当 DHCP 服务器收到这一信息后,它会尝试让 DHCP 客户机继续使用原来的IP地址,并回答一个DHCP ack 确认信息。如果此IP地址已无法再分配给原来的DHCP客户机使用时,则DHCP服务器给DHCP客户机回答一个 DHCP nack 否认信息。

当原来的DHCP客户机收到此 DHCP nack 否认信息后,它就必须重新发送 DHCP discover 发现信息来请求新的IP地址。

设备在DHCP服务器请求到的ip地址有一个期限限制,这就是租约,DHCP服务器向设备出租的IP地址一般都有一个租借期限,期满后DHCP服务器便会收回出租的IP地址。设备要延长其IP租约,则必须更新其IP租约。设备启动时和IP租约期限到达租约的50%时,电脑都会自动向DHCP服务器发送更新其 IP 租约的信息。

DHCP.PNG-83.4kB

1、客户端发送DHCP discover包,查找网络上的DHCP服务器。
2、服务器向客户端回应DHCP offer包,目的是告诉客户端,我能为你提供IP地址。
3、DHCP request包,客户端向选定的服务器请求IP地址(其它服务器终止交互)。
4、DHCP ack包,确认包,服务器向客户端分配ip地址。

第三章 网络协议

3.1 数据传送过程及各种相关协议

数据传送过程:
data-tcpip.jpg-125.7kB

各种相关协议:
The-logical-mapping-between-OSI-basic-reference-model-and-the-TCP-IP-stack.jpg-79.6kB

从发送端应用层开始,往下每层都对数据进行了封装,并加上自己的头部,头部包含了与自己层相关的信息,而各层对上层的头部是不能理解的。在接收端,从最底层开始,往上逐层处理自身头部并剥离后向上传递,直到到达最终的应用层。

3.2 TCP 协议及其数据封装格式

TCP,Transmissiom Control Protocol,即传输控制协议,是互联网协议族中的核心协议之一,是可靠的面向连接的传输协议,处于传输层。

3.2.1 发起连接的“握手三步曲”

TCP 协议在双方互相通讯时,需要先建立连接。发起方率先通知接收方需要建立连接,接收方发回响应同意连接,发送方发回正确回应后,双方连接就建立起来了。这就是双方“握手三步曲”,是 TCP 正常通讯前必经步骤。

3.2.2 数据传递中的控制

为可靠传递数据,TCP 协议规定了数据传送中的各种控制行为。
1)数据段(Segment),即 TCP 封装起来的数据包,需要按编号传递,以便在接收端按顺序正确重组;
2)丢包重传机制,在丢包情况下如何重新传送;
3)流量控制,便于双方协同工作,不会因发送数据太快而出现另一方来不及处理的情况;
4)拥塞控制,便于网络设备顺利传输数据而不出现拥塞。

3.2.3 断开连接

TCP 连接发起方发出断开连接通知,对方给出回应(表示收到),发送方等对方再次回应(表示可断开了),发起方发出最后回应后,双方断开连接。

3.2.4 TCP 的数据封装

TCP-segment.png-74.7kB

Source Port
源端口号,是发送方进程(运行中的应用程序)的网络通讯编号,标记的是发送数据的最初来源。
Destination Port
目的端口号,是接收方进程的网络通讯编号,标记的是数据发往的最终目的地。
Data
包装好的数据

3.3 UDP 协议及数据封装

UDP,User Datagram Protocol,用户数据报协议,和 TCP 处于同一层次的传输协议,但它并不负责传输的可靠性,是面向消息而非面向连接的协议。对于不需要无差错的应用,用 UDP 进行数据传输,比 TCP 轻量得多。这类应用包括在线音乐(丢几个数据包,基本听不出来)、在线视频(较严重的丢包,可能只会导致画面出现轻度马赛克)等。
UDP header2.png-9.9kB

3.4 IP 协议与数据封装

IP,Internet Protocol,即互联网协议,是互联网的核心协议。它规定了如何标记和定位网络中的设备,如何将数据打包在不同网络之间转发传送等,是网络层协议(OSI 模型的第三层)。

ip-header-v41.png-172kB

3.5 Ethernet 与数据封装

Ethernet,即以太网,是计算机局域网的组网技术总称。根据以太网的相关协议,数据在以太网中传输,将对数据进行如下包装(包装后叫做frame,帧)。

IP_4.2_GRA_EthernetPacket_EN.png-29.8kB

MAC Address
MAC 地址,是每一个网络接口卡的物理地址,每一个网卡的 MAC 地址由 6 个字节构成,并且全球唯一。

3.6 ARP 协议

ARP协议,即 Address Resolution Protocol, 地址解析协议,它用于定位某个 IP 地址所对应的 MAC 地址(即网络接口硬件地址)。
当一台设备需要数据传递给某个 IP 地址的设备时,不论这台设备在什么地方,不论这台设备有多么遥远,它先要知道把数据传给的下一个节点的硬件地址,即 MAC 地址,因为在网络的第一、二层,数据只能一个节点一个节点地往下传。APP 协议正是用于确定下一个节点的 MAC 协议。

工作过程

1)一台设备要将数据发给一个特定 IP 的设备,它会用自己的子网掩码来计算,确定这台设备是否与自己在同一网段,如果在,就会根据此 IP 来定位本次数据包目的地的 MAC 地址,如果不在,就用自己的默认网关 IP 来定位本次数据包目的地的 MAC 地址。定位地址时,它会首先在本地查找,看有没有这个 IP(或者默认网关的 IP) 对应的 MAC 地址,如果有,数据在第二层封装时将目的 MAC 地址填入,把数据包发出。
2)如果在本地查找不到 IP 对应的 MAC 地址,它将会在网络中发送一条广播,消息包含自己的 IP 地址、自己的 MAC 地址、要定位的设备的 IP 地址。
3)交换机得到此消息后,会检查自己的本地记录,如果没有发送广播者的记录,会把它的 MAC 地址和自己收到消息的端口对应起来并记录下来,然后把消息转发给其余的所有和自己连接的计算机。
4)要定位的设备收到消息后,知道此广播目的是在打探自己的 MAC 地址(其余设备知道打探的不是自己,如果自己本地尚无广播者的记录,会先将广播者的 IP 和 MAC 的对应关系记录到本地,然后就丢弃此消息),于是,先检查自己有没有对方 IP 到 MAC 对应的记录,如果没有,就记录到本地,然后将自己的 IP、自己的 MAC 地址,发送给广播发送者作为回应,消息经过交换机时,交换机会检查自己的本地记录,如果没有回应者的记录,会把它的 MAC 地址和自己收到回应消息的端口对应起来并记录下来,然后把消息转发到目的地 MAC (也就是广播者)对应的那个端口。
5)广播者收到回应,把回应者的 IP 和 MAC 对应关系记录到本地。最后,把要发送的数据在第二层包装,目的地 MAC 填入刚刚获得的值,把数据包发送出去。

第四章 交换机(SWITCH)

4.1 计算机互联问题

4.1.1 计算机通过集线器(HUB)互联

HUB 提供了设备互联的方案,可理解为所有联接的设备在物理上是互通的。这种互联方案,任何计算机发出的数据包,都会被连在一起的计算机看到(虽然不是广播,但和广播一样),而且,任何时刻,只能有两台计算机在相互通讯,线路被占用,其它计算机要想通讯,只能等到线路空闲时。这样连接起来的计算机,在通讯时可能会产生冲突(即同时抢了线路而互相干扰的情况),我们说,它们处于同一个“冲突域”中。
为了正常通信,这种连接将采用 CSMA/CD(Carrier Sense Multiple Access with Collision Detection,载波监听多点接入/碰撞检测),即带冲突检测的载波监听多路访问技术。
在这种方案中,一台计算机要想发送数据,它得首先监听线路是否被占用,如果被占用,它将经过随机时间再次检测。如果检测到空闲,但在发送数据时检测到了冲突(有计算机和你同时检测到空闲,同时发起了数据传输),则会终止传输,等待一个随机时间后再检测线路是否空闲,直到线路空闲,正常发送数据而无冲突为止。
可见,通过 HUB 连接,如果连接的计算机越多,网络的使用效率就越低。因此,集线器基本已经退出了历史舞台。

4.1.2 计算机通过交换机(SWITCH)互联

通过交换机互联的计算机,物理上并没有连接一起。在数据包到来时,交换机根据数据包的走向(需要去到的 MAC 地址),将其传递给目的计算机。所有通过交换机连接的设备都能够同时互相通信,而不会产生冲突。因此,通过交换机连接起来的设备,它们不会处于同一个“冲突域”中,网络通讯方式比 HUB 先进很多。
交换机是一种二层设备,它根据 MAC 地址来分发数据。如果有数据包的目的 MAC 地址是 FF FF FF FF FF FF (全1)时,交换机会将数据包发往所有通过自己连接起来的设备(除发送者外),这就是广播。因此,一台交换机连接起来的所有设备组成了一个“广播域”(除非划分了 vlan,即虚拟局域网,这样的话,一个 vlan 才是一个广播域)

4.2 通过交换机的通讯过程

不论数据要发往多么遥远的地方,它都要一步一步地走。数据链路层负责将数据从一台设备送往下一台相邻的设备。

在以太网中,数据链路层的数据包将指定数据发往某个 MAC 地址,即一个具体的可到达的网络接口(网卡)的物理地址。在这一层,IP 地址是不被知道的,它被包裹到数据帧的“数据”里了。

4.2.1 与同网络计算机的通讯

下面我们根据下图来探讨 #1 计算机将数据发送给同一网络中计算机的过程(假定数据要传给 #2 机,并假定 #1 计算机接到交换机的 fa0/1 口,#2 计算机接到交换机的 fa0/2 口,依此类推。)。

hub.jpg-55.5kB

1)首先,#1 计算机根据 IP 数据包中的目的地 IP 地址 192.168.0.2,再根据自己的子网掩码,算出此 IP 的网络地址,它与自己相同,因此在同一网段。

2)接着,#1 计算机将检查自己的一个记录表 —— ARP 缓存,它里边记录了一些可直达的 MAC 地址和 IP 地址的映射。如果表中有192.168.0.2 对应的 MAC 地址记录,则跳到以下第 7 步。如果表中没有 192.168.0.2 对应的 MAC 地址记录,则:

3)#1 计算机向外发出一个 ARP 广播消息(消息的数据包的目的 MAC 地址是 FF FF FF FF FF FF),数据表达了:“各位,我的 IP 地址是 192.168.0.1, MAC 是 OA-E5-98-4E-34-32,谁是 192.168.0.2,请告诉我你的信息。”

4)交换机查看 #1 号计算机发过来的数据包,会先检查自己有没有 #1 号计算机 MAC 地址 OA-E5-98-4E-34-32 对应到自己端口的记录,如果没有,就记下“OA-E5-98-4E-34-32 : fa0/1 端口”类似的记录备用。看到数据包的目的 MAC 地址是 FF FF FF FF FF FF,就把 #1 号计算机发送过来的所有此类数据包复制转发给所有端口(除 fa0/1)上连接的设备。

5)所有设备都收到消息后,先查看自己的 ARP 表里有没有发送广播的这台机器的 MAC 地址和 IP 地址的对应记录,如果没有,就添加,如果有,不正确,就更新,然后对比自己的 IP 地址,不是 192.168.0.2 的计算机就选择了沉默,而 #2 号机发现自己的 IP 正是 192.168.0.2,因此,就向 MAC 地址是 OA-E5-98-4E-34-32 (#1 号机) 的机器发出了回应,“我的 IP 是 192.168.0.2,MAC 地址是 98-BA-48-98-CD-A6”。

6)消息到达交换机,交换机先检查自己有没有 #2 机的相关记录,如果没有,就记下“98-BA-48-98-CD-A6:fa0/2”类似的记录。然后查看消息目的地的 MAC 是:OA-E5-98-4E-34-32,就根据之前记下的记录,把此消息转发到 fa0/1 端口连接的设备。

7)#1 机收到回应后,把对方的 IP 和 MAC 地址存入自己的 ARP 表。

8)根据要发往设备的 IP 地址及 ARP 记录,#1 号机将要发送给 #2 号机的数据包打上“来源:OA-E5-98-4E-34-32,目的地:98-BA-48-98-CD-A6”标记并封装后,交给物理层发往交换机。

8)交换机收到打上以上标记的数据包后,根据读取的信息: “目的地:98-BA-48-98-CD-A6”, 将其转发给与自己 fa0/2 端口连接的 #2 号机。

4.2.2 与不在同一网络计算机的通讯

下面我们根据下图来探讨 #1 计算机将数据发送给不同网络中计算机(假定 IP 地址为 202.123.110.86)的过程。

1)首先,#1 计算机根据 IP 数据包中的目的地 IP 地址 202.123.110.86,再根据自己的子网掩码,算出此 IP 的网络地址,它与自己不相同,因此不在同一网段。

2)对于此种情况,#1 计算机将会把数据包发给自己配置信息当中的“默认网关”设备,即图中的“云”中的 IP 地址为 192.168.0.254 的设备(但包中的目的地地址永远不会被改变)。

3)#1 号计算机会先在自己的 ARP 表中寻找 IP 为 192.168.0.254 的 MAC 地址,如果没有就发广播,将 192.168.0.254 及对应的 MAC 地址记录到 ARP 表,过程与前述一样。

4)根据要发往设备的 IP 地址及 ARP 记录,#1 号机将要发送给 192.168.0.254 的计算机的数据包打上“来源:OA-E5-98-4E-34-32,目的地:0B-AC-59-88-D3-28”标记并封装后,交给物理层发往交换机。

5)交换机收到打上以上标记的数据包后,根据读取的信息: “目的地:0B-AC-59-88-D3-28”, 将其转发给 IP 为 192.168.0.254 的设备(即路由器)。

6)路由器根据数据包中的 IP 地址,再决定要将数据发往哪一台设备。其间可能经过多个路由器,最终将数据包送到了 IP 为 202.123.110.86 的设备。

4.3 VLAN 划分

一台交换机默认是同一个广播域,广播域过大,广播消息相应会增多,网络利用率会有所下降。同时,可能因业务需要,我们想将一台交换机“切割”成几个互相隔离的广播域,就好像在物理上把一台交换机变成了多台交换机一样。我们可以通过针对同一台交换机,将其端口划分到不同的相互隔离的“群体”来实现这一点,这种技术叫“虚拟局域网”技术,即 VLAN (Virtual Local Area Network)。这些相互隔离的“群体”,就是一个一个的 “VLAN”。

在交换机上建立 VLAN, 只需要:

  1. vlan 编号

即可,然后对其命名:

  1. name 名称

要将一个端口(如:fa0/1)加入 VLAN 30,只需要:

  1. inerface fa0/1
  2. switchport mode access
  3. switchport access vlan 30

要将一个范围的端口(如:fa0/10 - fa0/15 )加入 VLAN 10,只需要:

  1. interface range fastEthernet 0/10 - 15
  2. switchport mode access
  3. switchport access vlan 10

对于跨交换机的 VLAN,需要将两台交换机相互连接,并将相连的两个端口模式设置成 trunk,以使所有 VLAN 能够通过共用这条线相互连接。假如两端都用 fa0/24 相连,则需要在两端做如下设置:

  1. interface fa0/24
  2. switchport mode trunk
  3. switchport trunk allowed vlan 编号范围

以下是一个配置案例:

  1. Switch>
  2. Switch>enable
  3. Switch#
  4. Switch#configure terminal
  5. Switch(config)#vlan 10
  6. Switch(config-vlan)#name design
  7. Switch(config-vlan)#vlan 20
  8. Switch(config-vlan)#name prog
  9. Switch(config-vlan)#vlan 50
  10. Switch(config-vlan)#name db
  11. Switch(config-vlan)#exit
  12. Switch(config)#interface fastEthernet 0/5
  13. Switch(config-if)#switchport mode access
  14. Switch(config-if)#switchport access vlan 10
  15. Switch(config-if)#interface fastEthernet 0/6
  16. Switch(config-if)#switchport mode access
  17. Switch(config-if)#switchport access vlan 10
  18. ...

期中测试项目:

有一家公司,在两间办公室里各有一台 Cisco 2950-24 交换机。公司的设计组(design)、编程组(prog) 和数据库组(db)分布于这两间办公室,情况如下表所示:

小组 办公室 计算机台数 网络地址
设计组 1606 1
设计组 1607 2
编程组 1606 2
编程组 1607 1
数据库组 1606 1
数据库组 1607 1

请完成以下任务:
1)确定各组的网络地址(填写上表)及每台机器的 IP 地址(标注于连接图上);
2)在两台交换机上为三个工作组各设立一个 VLAN (design, prog, db);

办公室 VLAN 编号 名称 交换机端口范围
1606 design
1606 prog
1606 db
1607 design
1607 prog
1607 db

3)将所有计算机连接到所属交换机上自己 VLAN 的端口;
4)配置让两个办公室内的各组机器能够相互通讯。

提交:
1)以上两张表(截图);
2)网络连接截图(设备带标志性说明:ip地址、连接端口);
3)两台交换机的(分别命名为 1606, 1607)的 show vlan 截图;
4)两台交换机的 show interface trunk 的截图;
5)每组一台机器的 ipconfig 和跨交换机 ping 同组机器的截图。

将以上截图按顺序插入邮件并发送到 77810525@qq.com,主题:网络基础期中测试(班级、学号、姓名)

根据截图信息,发现相同者,全部视为作弊,成绩为零!

第五章 路由器(Router)

5.1 什么是路由器

路由器的作用是根据 IP 包的目的地址,将数据包通过选定的端口转发出去。因此,路由器相当于一个中介,用于不同的局域网(LAN)互联,是作用于网络层(第三层)的设备。

5.2 路由器的工作原理

路由器的主要工作就是为经过路由器的每个数据包寻找一条最佳的传输路径,并将该数据有效地传送到目的站点。由此可见,选择最佳路径的策略即路由算法是路由器的关键所在。为了完成这项工作,在路由器中保存着各种传输路径的相关数据——路由表(Routing Table),供路由选择时使用,表中包含的信息决定了数据转发的策略。打个比方,路由表就像我们平时使用的地图一样,标识着各种路线,路由表中保存着子网的标志信息、网上路由器的个数和下一个路由器的名字等内容。路由表可以是由系统管理员固定设置好的(静态路由),也可以由系统动态修改,可以由路由器自动调整,也可以由主机控制。

5.3 路由表内容

路由表中的表项内容包括

destination
目的地址,用来标识IP包的目的地址或者目的网络。
mask
网络掩码,与目的地址一起标识目的主机或者路由器所在的网段的地址。
pre
标识路由加入IP路由表的优先级。可能到达一个目的地有多条路由,但是优先级的存在让他们先选择优先级高的路由进行利用。
cost
路由开销,当到达一个目的地的多个路由优先级相同时,路由开销最小的将成为最优路由。
interface
输出接口,说明IP包将从该路由器哪个接口转。
nexthop
下一跳IP地址,说明IP包所经过的下一个路由器。

5.4 路由分类

5.4.1 静态路由表

静态路由是由管理员在路由器中手动配置的固定路由,路由明确地指定了包到达目的地必须经过的路径,除非网络管理员干预,否则静态路由不会发生变化。静态路由不能对网络的改变作出反应,所以一般说静态路由用于网络规模不大、拓扑结构相对固定的网络。
特点:
1、它允许对路由的行为进行精确的控制
2、减少了网络流量
3、是单向的
4、配置简单

5.4.2 动态路由表

动态路由表是指动态路由协议(如RIP、OSPF)自动建立路由表,当你去掉一条连线时,它会自动去掉其路由。路由器的每一个接口对应不同网络,而一条连接两个路由器连线的两个端点IP应该属于同一网络。 设置的IP地址时,如果路由器的其它端口已有这个网络了,则提示已有这个网络,并显示对应的端口。
特点:
1、节点增删时工作量少
2、网络拓扑变化,协议自动调整
3、配置不易出错
4、对网络扩容性好
5、需要占用路由器资源

5.5 NAT

NAT,即 Net Address Tansition,网络地址转换。

5.6 配置举例

5.6.1 静态路由

一家公司,有三个办公地点,每个办公地点是一个单独的局域网,分别是财务处(192.168.10.0/24),市场部(192.168.20.0/24)和采购部(192.168.30.0/24),各部计算机由自己的路由器提供DHCP服务。现需要将三个局域网互联,能够互相访问。请通过合理配置静态路由,实现互联。

5.6.2 动态路由

场景如上,但需要通过其中一台路由器连到其它所有网络。请分别用 RIP 和 OSPF 协议实现动态路由。

第六章 组网设计

第七章 Linux 防火墙配置

第八章 网络编程

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注