- 论坛徽章:
- 0
|
问问题 如何使内部机器访问时,可是再通过rdr命令转到内部
假设你的bsd gateway.lan.ip:10.0.0.1
bsd gateway.wan.ip:a.b.c.d
你把 发往 a.b.c.d:81 的数据包 转发到 10.0.0.2:6666
现在你想在 10.0.0.3 访问 a.b.c.d:81 ,我们来看一下数据包的走向:
1,10.0.0.3 请求连接a.b.c.d:81,由于不在同一个网段,这个包(syn)将被发往
default gateway(BSD) 10.0.0.1;
2,10.0.0.1对包进行dnat变换,目的地址变为10.0.0.2:6666,源地址不变;
3,10.0.0.2将收到这个来自于10.0.0.3的连接请求(syn),发出syn+ack响应,目的地址为10.0.0.3,源地址10.0.0.2,由于在目的地址和本机在同一个网段,这个包将直接发往10.0.0.3(不经过BSD gateway<10.0.0.1> ;
4,10.0.0.3收到一个响应包(syn+ack),源地址为10.0.0.2,但是10.0.0.3
并没有对这个地址发起连接请求,于是将该包丢弃,继续等待来自a.b.c.d的响应.
这样就是你所看到的:
“可是做完以后发现内网的机器不能访问 网关ip:81 显示出错问题。” |
|