NAT 下虚拟机为什么能上网:路由表 + SNAT 证明

目标:理解 NAT 模式下,虚拟机如何通过宿主机连接到外部网络。

1. NAT 下虚拟机网络配置

在 VMware Fusion 中,虚拟机的网络接口配置为 NAT(Network Address Translation)。此时,虚拟机并不直接访问外部网络,而是通过宿主机共享网络连接。

2. 路由表查看

在虚拟机内,我们首先查看虚拟机的路由表,确保网络请求通过正确的网关进行转发。虚拟机路由表可以通过以下命令查看:

bash 复制代码
ip route

输出示例:

bash 复制代码
default via 192.168.1.1 dev eth0

此时,我们看到默认路由 default via 192.168.1.1,意味着虚拟机将网络请求发送到 192.168.1.1,这正是宿主机的 IP 地址。

3. NAT 转换与 SNAT(源地址转换)

通过宿主机的 SNAT(Source Network Address Translation)功能,虚拟机的私有 IP 地址(例如 192.168.1.100)会被转换为宿主机的公共 IP 地址,进而向外界发送请求。

  • 宿主机配置:宿主机启用了 SNAT,所有来自虚拟机的网络流量被重写成宿主机的 IP 地址,外部网络只能看到宿主机的 IP 地址。

4. 查看宿主机的 iptables 配置

bash 复制代码
sudo iptables -t nat -L -n -v

输出示例:

bash 复制代码
Chain POSTROUTING (policy ACCEPT 123 packets, 4567 bytes)
    SNAT   all  --  192.168.1.0/24       anywhere             to:192.168.1.1

这说明宿主机通过 SNAT 将虚拟机的 IP 地址转换为宿主机的 IP 地址,从而使虚拟机可以访问外部网络。


相关推荐
终端安全笔记20 小时前
下一个大版本要动的三处:更新指令、传输要求、策略写法
网络安全·ios·1024程序员节·移动设备管理
愤怒火龙果1 天前
AI 渗透测试智能体架构综述:从单兵到蜂群的演进图谱
人工智能·网络安全·架构
学逆向的1 天前
C 枚举变量
c语言·开发语言·网络安全
QZ166560951592 天前
数据库监测的主动防御:实时感知,看见即掌控
网络·安全·网络安全
kingx32 天前
BugKu 渗透测试4 Writeup:从 eval 注入到五层内网拿满 Flag
人工智能·网络安全·网络攻击模型·安全威胁分析·1024程序员节
愤怒火龙果2 天前
AIShield 靶场 WP
人工智能·网络安全·1024程序员节
sbjdhjd2 天前
从黑板事实到长链路剪枝:AI 渗透测试 Agent 的实验、失效与改造
人工智能·网络安全·数据挖掘·php·agent·剪枝·1024程序员节
TechWayfarer2 天前
PHP漏洞被利用,怎么揪出攻击IP?
开发语言·python·tcp/ip·网络安全·php
终端安全笔记2 天前
一份配置管十项 AI 功能:它关的是入口,不是数据
网络安全·ios·移动设备管理
学逆向的3 天前
C 多文件开发
c语言·开发语言·网络安全