13-网络篇-局域网与外网通信

1.局域网的主机如何和外网通信

比如我们电脑是在局域网内,如何能让它与外网服务器通信。

首先我们要明确一个概念,2个IP必须都是外网IP才能相互建立起外网通信。

比如电脑的IP是192.168.0.3

服务器的IP是 213.18.2.4

在这里,我们可以用NAT路由器来完成通信过程,

NAT路由器有一个全球IP地址,如:172.38.1.5

步骤:

(1)电脑发包给NAT路由器

(2)NAT路由器将源地址192.168.0.3转化成172.38.1.5,并发包给服务器213.18.2.4

(3)服务器响应将响应包发给NAT路由器172.38.1.5

(4)NAT路由器将包转发给电脑。

2.上面是路由器网络内一个电脑与服务器通信,假如多个主机呢

加入端口号才能对新旧IP形成映射关系。

NAPT说明

比如主机A:192.168.1.100:8888

主机B:192.168.1.101:8888

当他们都发包给NAT路由器时,映射如下:

192.168.1.100:8888 <---> 172.38.1.5:4001

192.168.1.101:8888 <---> 172.38.1.5:4002

NAT路由器把内网中不同的源IP地址都转换为相同的全球IP地址。但对源主机所采用的端口号,则转换为不同的新的端口号,从而完成映射与转发。

相关推荐
Nebula嵌入式7 小时前
【C语言】09-深入解析main函数
linux·c语言·开发语言·嵌入式
Dxy12393102168 小时前
Linux 编译安装 Python 3.12.10(多版本共存,不破坏系统Python)
linux·运维·python
xz驱动分享10 小时前
Linux DMA 子系统学习笔记
linux·dma·rk3588·嵌入式软件
w678200711 小时前
Prisma不能优雅的支持DTO,试试Vona ORM吧
linux·运维·ubuntu
Darkwanderor11 小时前
Linux系统编程实战项目:模拟实现shell
linux·c++
杨某不才13 小时前
如何能让Linux服务器对shell 终端 + sftp 文件传输长期保活
linux·运维·服务器
vance0413 小时前
免费Cloudflare隧道隐藏公网IP
linux·tcp/ip·github
杨云龙UP13 小时前
生产环境Oracle表空间扩容实战:使用Toad for Oracle图形界面新增Datafile(ASM+OMF)
linux·运维·数据库·oracle·表空间·asm 存储管理·toad
三言老师14 小时前
文本工具组合统计服务器日志数据
linux·运维·服务器
mounter62514 小时前
认识 Tetragon:基于 eBPF 的安全监控与强制执行工具
linux·ebpf·cve·kernel