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 网关








相关推荐
古译汉书8 小时前
【IoT死磕系列】Day 9:架构一台“自动驾驶物流车”,看8种协议如何协同作战
网络·arm开发·单片机·物联网·tcp/ip·架构·自动驾驶
哼?~10 小时前
Linux--网络基础
网络
苏渡苇11 小时前
Docker 网络完全指南
网络·docker·容器·docker容器·容器通信
风曦Kisaki13 小时前
# Linux 磁盘查看命令详解:df 与 du
linux·运维·网络
攻城狮在此13 小时前
华为交换机Console口密码如何清除
运维·网络·华为
hhcgchpspk14 小时前
网速上传下载流量监测工具尝试
网络·python·cmd·psutil
亚空间仓鼠15 小时前
OpenEuler系统常用服务(四)
linux·运维·服务器·网络
刘佬GEO15 小时前
【无标题】
网络·人工智能·搜索引擎·ai·语言模型
中议视控15 小时前
展厅和会议网络可编程中央控制系统主机支持HomeKit技术和BACnet网络
网络
昪彧翀忞15 小时前
dhcp小实验
linux·服务器·网络