实训十一——网络通信原理

补充

如何解决IPv4地址不足的问题?

使用专用的IPv4地址范围(如 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16)并通过NAT转换与外部网络通信,能有效节约公网IPv4地址。

根据RFC 1918的定义,以下是保留的私有IPv4地址范围:

  1. 10.0.0.0 到 10.255.255.255 (10.0.0.0/8)

  2. 172.16.0.0 到 172.31.255.255 (172.16.0.0/12)

  3. 192.168.0.0 到 192.168.255.255 (192.168.0.0/16)

一、对等网络通信原理

公有------公有,私有------私有

1.电脑A封装数据

  • Sport:10000以上的随机端口(临时借用)
  • Dport:80(假设)
  • SIP:A(已知)
  • DIP:B(局域网:查询或访问)(公网:DNS)
  • SMAC:A(固定在网卡的ROM中)
  • DMAC:R1-1(网关IP地址)(ARP协议)

注:MAC地址仅限局域网内通信,没有办法跨网段,所以目标MAC是R1-1口,因为A和B不在同一个网段,所以A会选择将数据发送给路由器。

而想要找到路由器,就需要路由器的IP地址,这个IP地址就是我们通常所配置的网关,我们根据网关访问路由器,又通过ARP协议找到R1-1口的MAC地址。

2.流程

  1. 电脑A发送数据到交换机,交换机查看自身MAC地址表,发现目标MAC对应2接口(未找到目标MAC就泛洪),就从2接口发出,到达路由器R1的1口
  2. 路由器R1接收到数据,丢弃MAC包,查看IP地址,通过检查自身路由表,发现目标IP需要经过2口,到达路由器R2的1口,所以将数据重新封装MAC包
  3. 重新封装的MAC包中,SMAC是R1-2口,DMAC是R2-1口,因为两口处于同一个网段,所以路由器R1可以通过ARP请求拿到R2-1口的MAC地址,正常通信
  4. R2接收到数据后丢弃MAC包,查看自身路由表,发现目标网段经过R2-2口后,将数据重新封装MAC,SMAC是R2-2口的MAC,DMAC是B的MAC(ARP请求)
  5. R2将重新封装好的数据通过2口传递给交换机S2,S2检查自身MAC地址表,找到2接口对应B的MAC地址后,直接将数据发送给B,B收到消息后应答,原路返回。

3.网关

  • 用于让局域网内所有电脑能够跨网段通信
  • 网关首先是一个路由器,还是默认路由

非对等通信原理

私有------>公网

拓扑图

电脑A和电脑B------交换机------路由器------公网

1.适不适合对等通信网络?

不适合。因为私有IP可重复,私有网段可以访问公网,但公网找不到私有IP

2.NAT功能(网络地址转换)(PAT)

  • NAT是解决IPv4地址不足问题的一项重要技术,通过转换私有IP地址和公网IP地址之间的映射,使得多个设备能够共享一个公网IP地址,实现与互联网的通信
  • 基本工作原理:在数据包从内部网络发送到外部网络(如互联网)时,将私有IP地址转换为公网IP地址

路由器中的NAT表

|---------|------|------|------|-------|
| 真SIP | 真DIP | 改SIP | 改DIP | 端口 |
| 1.3(假设) | 百度 | 公网IP | 百度 | 10001 |
| 1.2(假设) | 百度 | 公网IP | 百度 | 10002 |

注:PAT是端口地址转换,相较于其他的NAT类型更加实用,所以这里只了解PAT技术 ,如果内网多台电脑访问同一目标IP,响应数据可通过端口返回对应客户端。

问题

1.NAT网络是单向的吗?

是。因为私有IP可重复,外网无法正确访问内网中固定的某一台主机。

2.NAT网络一定是单向的吗?

不一定。有网络穿透技术。

(1)网络穿透技术(ssh隧道或Windows的端口映射)(VPN)

条件:对外路由拥有以上功能;对外IP地址,必须是公网IP地址

(2)中转服务器,进入NAT网络(QQ远程协助,花生壳,向日葵)

3.NAT网络中的虚拟机,为什么能访问公网?到底是否可以和局域网通信?

可以访问公网,可以和局域网通信。

(1)虚拟机把真实机当成了NAT网关路由器,所以虚拟机对外访问的时候被包装成了真实机的IP,真实机再访问外网又被包装成了路由器上的公网IP,可以互通。

(2)NAT网络允许多次包装,跟局域网通信也是一样,被包装成了真实机的IP。

相关推荐
大树8811 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠11 小时前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质11 小时前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
小宇宙Zz11 小时前
Maven依赖冲突
java·服务器·maven
Inhand陈工12 小时前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
网络研究院12 小时前
2026年网络安全
网络·安全·法律·法规·趋势·发展
酣大智12 小时前
ARP代理--工作原理
运维·网络·arp·arp代理
treesforest13 小时前
AI安全系统如何识别异常访问?IP风险识别正在成为关键能力
网络·人工智能·tcp/ip·安全·web安全
shushangyun_13 小时前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
古城小栈13 小时前
Unix 与 Linux 异同小叙
linux·服务器·unix