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地址。但对源主机所采用的端口号,则转换为不同的新的端口号,从而完成映射与转发。

相关推荐
wljy11 小时前
二、静态库的制作和使用
linux·c语言·开发语言·c++
mzhan0172 小时前
Linux: coredump产生对程序退出的影响
linux·运维·服务器
光电笑映2 小时前
从环境变量到进程虚拟地址空间——Linux 内存管理的底层脉络
linux·服务器·c++·c
源远流长jerry2 小时前
Linux 网络收包机制:从网卡到 Socket 的完整路径
linux·运维·服务器·网络·网络协议·tcp/ip
杰 .4 小时前
Linux工具使用
linux·服务器
Gc9umsbL14 小时前
零基础学Linux:21天从“命令小白”到独立部署服务器
linux·运维·服务器
骑着骆驼写程序5 小时前
Ubuntu上部署前端项目报500错误
linux·运维·ubuntu
小娄~~6 小时前
进程间通信
linux·运维·服务器
实心儿儿6 小时前
Linux —— 库的制作和原理(2)
linux·运维·服务器
运维全栈笔记6 小时前
Docker一键部署Immich:自建私有云相册,照片视频备份无忧
linux·服务器·网络·docker·容器