9 网关的作用

1、总结:
java 复制代码
1.如果离开本局域网,就需要经过网关,网关是路由器的一个网口。
2.路由器是一个三层设备,里面有如何寻找下一跳的规则
3.经过路由器之后 MAC 头要变,如果 IP 不变,相当于不换护照的欧洲旅游,如果 IP 变,相当于换护照的玄奘西行
3、场景引入

大学宿舍的局域网想要访问外网。

在进行网卡配置的时候,除了 IP 地址,还需要配置一个Gateway。

4、MAC 头和 IP 头的细节
java 复制代码
1.一旦配置了 IP 地址和网关,往往就能够指定目标地址进行访问了。
2.在跨网关访问的时候,牵扯到MAC 地址和 IP 地址的变化
java 复制代码
1.在 MAC 头里面,先是目标 MAC 地址,然后是源 MAC 地址,然后有一个协议类型,用来说明里面是IP 协议。

IP头:

java 复制代码
1.IP 头里面的版本号,目前主流的还是 IPv4
2.下一层的协议,是 TCP 还是 UDP
3.最重要的就是源 IP 和目标 IP。先是源 IP 地址,然后是目标 IP 地址
5、访问流程:
java 复制代码
1.在任何一台机器上,当要访问另一个 IP 地址的时候,都会先判断,这个目标 IP 地址,和当前机器的 IP
地址,是否在同一个网段。怎么判断同一个网段呢?需要 CIDR 和子网掩码。
2.如果是同一个网段,那就没网关什么事情,直接将源地址和目标地
址放入 IP 头中,然后通过 ARP 获得 MAC 地址,将源 MAC 和目的 MAC 放入 MAC 头中,发出去就可以了。
3.如果不是同一网段,这就需要发往默认网关。
4.Gateway 的地址一定是和源 IP 地址是一个网段的。往往不是第一个,就是第二个。
  例如:192.168.1.0/24 这个网段,Gateway 往往会是 192.168.1.1/24 或者 192.168.1.2/24
5.1、如何发往默认网关呢?
java 复制代码
1.网关和源 IP 地址是一个网段的
2.这个过程就和发往同一个网段的其他机器
是一样的:将源地址和目标 IP 地址放入 IP 头中,通过 ARP 获得网关的 MAC 地址,将源 MAC 和网关的 MAC 放入 MAC 头中,发送出去。网关所在的端口,例如 192.168.1.1/24 将网络包收进来,然后接下来怎么做,就完全看网关的了(路由算法)。

网关往往是一个路由器,是一个三层转发的设备

5.1、三层设备?
java 复制代码
就是把 MAC 头和 IP头都取下来,然后根据里面的内容,看看接下来把包往哪里转发的设备。
5.2、静态路由
java 复制代码
1.就是在路由器上,配置一条一条规则。
2.请求出去的时候就一条一条的匹配规则,找到符合的规则
3.根据规则从某个口抛出去,找下一跳 IPX

举例

想访问 BBS 站(它肯定有个网段),从 2 号口出去,下一跳是 IP2。

想访问教学视频站(它也有个自己的网段),从 3 号口出去,下一跳是 IP3,然后保存在路由器里。

6、IP 头和 MAC 头哪些变、哪些不变?
java 复制代码
1.MAC 地址是一个局域网内才有效的地址。
2.因而,MAC 地址只要过网关,就必定会改变,因为已经换了局域网。

//两者主要的区别在于 IP 地址是否改变
3.不改变 IP 地址的网关,我们称为转发网关
4.改变 IP 地址的网关,我们称为NAT 网关








相关推荐
lulinhao3 分钟前
HCIA/HCIP基础知识笔记汇总
网络·笔记
暴走的YH18 分钟前
【网络协议】三次握手与四次挥手
网络·网络协议
yuzhangfeng20 分钟前
【云计算物理网络】数据中心网络架构设计
网络·云计算
zhu12893035561 小时前
网络安全的重要性与防护措施
网络·安全·web安全
网络研究院1 小时前
ChatGPT 的新图像生成器非常擅长伪造收据
网络·人工智能·安全·chatgpt·风险·技术·欺诈
小吃饱了2 小时前
TCP可靠性传输
网络·网络协议·tcp/ip
写代码的小王吧2 小时前
【Java可执行命令】(十)JAR文件签名工具 jarsigner:通过数字签名及验证保证代码信任与安全,深入解析 Java的 jarsigner命令~
java·开发语言·网络·安全·web安全·网络安全·jar
孪生质数-2 小时前
SQL server 2022和SSMS的使用案例1
网络·数据库·后端·科技·架构
IT小馋猫3 小时前
Linux 企业项目服务器组建(附脚本)
linux·服务器·网络
前端极客探险家4 小时前
WebSocket 详解:构建一个复杂的实时聊天应用
网络·websocket·网络协议