java网络原理5
一、网络地址转换(NAT)
1. 原理
- NAT 用于解决 IP 地址不够用的问题 ,将 IP 地址分为外网 IP(公网 IP)和内网 IP(私网 IP)。内网 IP 如 10.、172.16 - 172.31.、192.168.* 等,家用路由器一般分配 192.168 开头的内网 IP 。
- 一个局域网内设备共用一个外网 IP ,通过端口号区分不同设备的网络请求 。运营商路由器记录 IP 和端口的映射关系,如 NAPT(网络地址端口转换) ,当内网设备 A(192.168.0.10)访问外网服务器,源 IP 在内网是 192.168.0.10 ,经运营商路由器转换为外网 IP(如 5.6.7.8 ),同时记录端口映射(如源端口 1000 映射为新端口 1000 ),外网服务器响应时,路由器依据记录还原转发给 A 。
2. 作用及安全性
- 提高了 IP 地址利用率,使得有限的公网 IP 能满足大量内网设备联网需求。
- 增强网络安全性,内网设备对外相对隐藏,外部设备无法主动访问内网设备(除非内网设备先发起访问建立连接 ),类似设备在有门禁的小区,黑客难以直接攻击。
二、局域网(LAN)组网
1. 设备与 IP 分配
- 家用网络中,光猫和路由器是关键设备 。光猫带有“光口”用于插光纤,也是一种路由器 。路由器有 WAN 口和 LAN 口,WAN 口连接运营商网络获取外网 IP(如 10.1.2.3.4 ),LAN 口分配内网 IP 给连接设备(如 192.168.0.1 ) 。
- 路由器通过 DHCP(基于 UDP 应用层协议 )功能自动为局域网内设备分配 IP ,同一局域网内设备网络号相同(如 192.168.0 ),主机号不同 。若两个设备主机号相同会导致网络冲突,无法上网 。不同局域网网络号不能相同 。
2. 示例
- 图中展示了一个网络拓扑,光猫连接主路由器,主路由器下连接多个设备,如我的电脑(192.168.0.200)、师娘的电脑(192.168.0.199 )等 ,不同颜色标识不同局域网 。
三、网络层 IP 协议
1. IP 数据报结构
- IP 协议负责地址管理和路由选择 。IP 数据报包含多个字段,如 4 位版本(一般为 IPv4 的 4 或 IPv6 的 6 )、4 位首部长度、8 位服务类型(TOS)、16 位总长度(表示数据报字节数,最大 64KB ) 。还有 16 位标识、3 位标志、13 位片偏移用于分片重组;8 位生存时间(TTL ,每次经路由器转发减 1 ,为 0 时丢弃 ,常见取值 32、64、128 );8 位协议(区分是 TCP 还是 UDP 等传输层协议 );32 位源 IP 地址和目的 IP 地址等 。
2. 工作机制
- 进行 IP 数据报转发时,路由器依据目的 IP 地址转发 。若目的 IP 错误,数据报不应在网络中无限转发 。IP 协议内置拆包组包过程(由操作系统处理 ) 。
四、传输层协议(TCP 和 UDP)
1. UDP:用户数据报协议,是无连接、不可靠的传输协议 ,简单高效,常用于对实时性要求高、能容忍少量丢包的场景,如视频直播、在线游戏等 。
2. TCP
- 是面向连接、可靠的传输协议 ,通过确认应答、超时重传机制保证数据可靠传输 ;三次握手建立连接,四次挥手断开连接 ;采用滑动窗口、流量控制、拥塞控制等机制优化传输效率和网络性能 ;面向字节流处理粘包问题 ;通过心跳包等处理异常情况 。常用于对数据准确性要求高的场景,如文件传输、网页浏览等 。
五、IPv4 与 IPv6
1. IPv4 现状与问题
- IPv4 地址数量有限(约 42 亿 ),在移动互联网时代设备剧增情况下地址紧张 。采用动态分配 IP 地址和 NAT 机制缓解地址不足问题 ,但 NAT 也带来一些网络穿透等方面的复杂性 。
2. IPv6 特点与推广
- IPv6 地址空间极大,理论上可给地球上每个沙子分配地址 。其提出时间与 NAT 相近,但在全球普及程度低 ,国内普及程度达 80% 以上 。IPv6 和 IPv4 不兼容,设备升级到 IPv6 需更换支持 IPv6 的路由器等设备 。国内大力推广 IPv6 ,一方面是为了摆脱对 IPv4 体系(由美国主导 ,分配权在美国人手中 ,话语权受制约 )的依赖,另一方面提升网络自主性和安全性 。
六、VPN 原理
VPN(虚拟专用网络)本质是工作在应用层的代理 。通过在特定设备(如 C )上安装特殊程序转发请求 ,构造数据报从 A 访问 C 时,请求中包含真实要访问的 IP(B 的 IP ) 。在网络中,路由器相当于加了“墙” ,会禁用部分服务器 IP ,阻止非法或受限的网络访问 。但 VPN 若被用于非法活动(如访问不良信息、违规传输数据等 )是不被允许的 。