初识网络拓扑结构
1. 线缆 Line
不从严格意义上来讲
-
相同设备用交叉线,不同设备用直通线
-
一般双绞线的线序采用568B标准接法,其线序为:
橙白,橙,绿白,蓝,蓝白, 绿,棕白,棕
扩展,交换机是互连相同网络的,路由器是互连不同网络的
2. IP地址 IP Address
IP地址是网络中主机的唯一标识
常用的 192.168.1.1
属于点分十进制的表示方式
其实在计算机中所展示的是二进制:11000000 10101000 00000001 00000001
,每8位为一个十进制数
3. 子网掩码 Subnet Mask
子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识
很明显,子网掩码的作用就是 区分网络标识和主机标识
以 `192.168.1.1/24` 为例,”/24“ 表示前24位为网络号,即点分十进制的前3位
若规定该IP地址的 前三位为网络号,后一位为主机号
则该IP地址的子网掩码为:255.255.255.0
为什么是255.255.255.0?
首先我们把 IP地址和子网掩码进行相与的运算
相与:有0为0,其余的都是1
11000000 10101000 00000001 00000001 代表192.168.1.1
11111111 11111111 11111111 00000000 代表255.255.255.0
11000000 10101000 00000001 00000000 结果192.168.1.0
我们看到相与后的结果为 192.168.1.0 这便是我们的 网络地址
所有处在同一网络地址的主机可以互相通信
思考:
假设有另外一个IP地址为192.168.2.1/24的主机想要与上述IP地址进行通信,你说可以吗?
1. 首先,我们需要计算 192.168.2.1/24 的网络地址
11000000 10101000 00000010 00000001 代表192.168.2.1
11111111 11111111 11111111 00000000 代表255.255.255.0
11000000 10101000 00000010 00000000 结果192.168.2.0
我们看到相与后的网络地址为:192.168.2.0
2. 所有处在同一网络地址的主机可以互相通信,对比两个地址
192.168.1.0
192.168.2.0
我们发现这两个地址处于不同的网络,不是同一个网络地址,故这两台主机不能相互通信
事实是不是如此,我们做个实验看看
配置好主机的IP地址和子网掩码,开始测试是否能够互相通信
以主机 192.168.1.1/24 为例,使用ping命令测试是否能够互相通信
C:\>ping 192.168.2.1
Pinging 192.168.2.1 with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for 192.168.2.1:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
显然,请求超时。说明这两台机器无法相互通信
我们把右边主机的IP地址修改为 192.168.1.2
,测试是否能够互相通信
C:\>ping 192.168.1.2
Pinging 192.168.1.2 with 32 bytes of data:
Reply from 192.168.1.2: bytes=32 time<1ms TTL=128
Reply from 192.168.1.2: bytes=32 time<1ms TTL=128
Reply from 192.168.1.2: bytes=32 time<1ms TTL=128
Reply from 192.168.1.2: bytes=32 time<1ms TTL=128
Ping statistics for 192.168.1.2:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
由此可见,只有处在同一网络地址的主机可以互相通信
4. 网关 Gateway
首先明确一点,网关是一种设备,引用一位知乎答主的例子
网关一般就是一台路由器,有点像“一个小区中的一个邮局”,小区里面的住户互相是知道怎么走
但是要向外地投递东西就不知道了,怎么办?
把地址写好送到本小区的邮局就好了。
那么,怎么区分是“本小区”和“外地小区”的呢?
根据IP地址 + 掩码。如果是在一个范围内的,就是本小区(局域网内部)
如果掩不住的,就是外地的。
例如,你的机器的IP地址是:192.168.0.2/24,网关是192.168.0.1
如果机器访问的IP地址范围是:192.168.0.1~192.168.0.254的
说明是一个小区的邻居,你的机器就直接发送了(和网关没任何关系)
如果你访问的IP地址不是这个范围的,则就投递到192.168.0.1上,让这台设备来转发
作者:老宽的刀
链接:https://www.zhihu.com/question/362842680/answer/951412213
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
看到这里,你应该明白了网关的作用
- 网关(Gateway),将两个使用不同协议的网络段连接在一起的设备
- 网关的作用就是对两个网络段中的使用不同传输协议的数据进行互相的翻译转换
由此可见,网关最主要的作用就是实现不同网络地址之间主机的相互通信
继续上次的实验,假设两台主机之间处于不同的网络地址
交换机是互连相同网络的,路由器是互连不同网络的,因此我们把两个不同的网络使用路由器连接起来
此时连接路由器的两条线都是红的,这是因为路由器的默认端口都是关闭状态,需要手动将其开启,另一个口也是如此

注意:
当 两个不同网络之间的主机想要相互通信时,必须先做以下几点:
-
配置所有主机的 IP地址、子网掩码
-
配置路由器已连接主机的端口的 IP地址和子网掩码
-
配置所有主机的网关,怎么确定网关?
主机所填写的网关,就是与主机直接相连的路由器对应的端口的IP地址
问题:
- 如何配置 路由器已连接主机的端口的 IP地址和子网掩码?
1. 点击你需要配置的路由器
2. 单击上方 `CLI` 进入命令行界面, 此时你处于一般用户模式
路由器有用户模式、特权模式及配置模式
用户模式 Router>
特权模式 Router#
配置模式 Router(config)#
3. 上面的东西先不要管,等后面用多了自然懂得操作,输入命令
Router>enable
Router#config ter
Router#config terminal (进入特权模式,可使用Tab键补全命令)
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#int
Router(config)#interface fas
Router(config)#interface fastEthernet 0/0 (配置端口fa0/0)
Router(config-if)#ip address 192.168.1.101 255.255.255.0 (配置端口fa0/0的IP地址和子网掩码)
Router(config-if)#^Z (快速回到特权模式)
Router#
%SYS-5-CONFIG_I: Configured from console by console
Router#
Router#config terminal
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#int
Router(config)#interface fa
Router(config)#interface fastEthernet 0/1 (配置端口fa0/1)
Router(config-if)#ip ad
Router(config-if)#ip address 192.168.2.101 255.255.255.0 (配置端口fa0/1的IP地址和子网掩码)
Router(config-if)#^Z
Router#
%SYS-5-CONFIG_I: Configured from console by console
这就已经完成了配置,怎么验证你配置完毕呢?如图所示,点开配置,点击对应的端口,红框部分如果有你输入的信息代表配置完毕,你也可以在这个界面修改数据
-
如何配置主机的网关?
此时的网络拓扑结构如下图所示
配置主机
192.168.1.1
的网关,网关一定是主机与路径上的第一台路由器对应端口的IP地址,如图所示。另外一台主机也是如此
当上述操作都配置完毕后,我们再次测试不同网络的主机之间是否能相互通信
C:\>ping 192.168.2.1
Pinging 192.168.2.1 with 32 bytes of data:
Request timed out. (这里的请求超时是因为路由器需要有一个反应时间,正常现象)
Reply from 192.168.2.1: bytes=32 time<1ms TTL=127
Reply from 192.168.2.1: bytes=32 time=11ms TTL=127
Reply from 192.168.2.1: bytes=32 time<1ms TTL=127
Ping statistics for 192.168.2.1:
Packets: Sent = 4, Received = 3, Lost = 1 (25% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 11ms, Average = 3ms
很显然不同网络的主机可以相互通信,至此网络拓扑的结构我们就认识的差不多了