【计算机网络 - 基础问题】每日 3 题(四十四)

✍个人博客:https://blog.csdn.net/Newin2020?type=blog

📣专栏地址:http://t.csdnimg.cn/fYaBd

📚专栏简介:在这个专栏中,我将会分享 C++ 面试中常见的面试题给大家~

❤️如果有收获的话,欢迎点赞👍收藏📁,您的支持就是我创作的最大动力💪

📝推荐参考地址:https://www.xiaolincoding.com/(这个大佬的专栏非常有用!)

130. 如何解决 NAT 潜在的问题呢?

解决的方法主要有两种方法。

  1. 改用 IPv6

IPv6 可用范围非常大,以至于每台设备都可以配置一个公有 IP 地址,就不搞那么多花里胡哨的地址转换了,但是 IPv6 普及速度还需要一些时间。

  1. NAT 穿透技术

NAT 穿越技术拥有这样的功能,它能够让网络应用程序主动发现自己位于 NAT 设备之后,并且会主动获得 NAT 设备的公有 IP,并为自己建立端口映射条目,注意这些都是 NAT 设备后的应用程序自动完成的。

也就是说,在 NAT 穿透技术中,NAT 设备后的应用程序处于主动地位,它已经明确地知道 NAT 设备要修改它外发的数据包,于是它主动配合 NAT 设备的操作,主动地建立好映射,这样就不像以前由 NAT 设备来建立映射了。

说人话,就是客户端主动从 NAT 设备获取公有 IP 地址,然后自己建立端口映射条目,然后用这个条目对外通信,就不需要 NAT 设备来进行转换了。

131. SNAT 和 DNAT 的区别

SNAT:内部地址要访问公网上的服务时(如 web 访问),内部地址会主动发起连接,由路由器或者防火墙上的网关对内部地址做个地址转换,将内部地址的私有 IP 转换为公网的公有 IP,网关的这个地址转换称为 SNAT,主要用于内部共享 IP 访问外部。

DNAT:当内部需要提供对外服务时(如对外发布 web 网站),外部地址发起主动连接,由路由器或者防火墙上的网关接收这个连接,然后将连接转换到内部,此过程是由带有公网 IP 的网关替代内部服务来接收外部的连接,然后在内部做地址转换,此转换称为 DNAT,主要用于内部服务对外发布。

132. 什么是 ICMP?

ICMP 全称是 Internet Control Message Protocol,也就是互联网控制报文协议。

里面有个关键词 ------ 控制,如何控制的呢?

网络包在复杂的网络传输环境里,常常会遇到各种问题。

当遇到问题的时候,总不能死个不明不白,没头没脑的作风不是计算机网络的风格。所以需要传出消息,报告遇到了什么问题,这样才可以调整传输策略,以此来控制整个局面。

相关推荐
Godlovesea11 分钟前
ubuntu控制器多网口配置
开发语言·php
sensen_kiss28 分钟前
CAN201 Introduction to Networking(计算机网络)Pt.3 网络层
网络·学习·计算机网络·智能路由器
web1368856587133 分钟前
rust教程 第一章 —— 初识rust
开发语言·后端·rust
songroom35 分钟前
Rust : tokio中select!
开发语言·后端·rust
dubochao_xinxi36 分钟前
QT5 在某些系统出现qt.qpa.xcb: could not connect
开发语言·qt
blueman888838 分钟前
QWidget应用封装为qt插件,供其他qt应用调用
开发语言·qt
qincjun40 分钟前
Qt仿音乐播放器:设置窗口、部件属性
开发语言·qt
HEU_firejef1 小时前
面试经典 150 题——数组/字符串(一)
数据结构·算法·面试
编码小哥1 小时前
C++线程同步和互斥
开发语言·c++
qincjun1 小时前
Qt仿音乐播放器:动画类
开发语言·qt