首页 > 编程知识 正文

snat是什么意思,snat规则

时间:2023-05-05 05:48:19 阅读:116544 作者:4474

*

SNAT是sourcenetworkaddresstranslation的缩写,是源地址转换

例如,当多个PC机使用ADSL路由器共享因特网并且每个PC机具有内联网ipPC机以接入外部网络时,路由器用路由器的ip替换分组头部中的源地址这不是pc机的内部网ip,而是因为此服务器收到的包头部的“源地址”已经被替换,所以称为SNAT。 基于源地址地址转换DNAT是目的地网络地址转换(destinationnetworkaddresstranslation的缩写)的典型应用是在内部网中配置内部网ip的web服务器, 前端有防火墙,公共ip互联网上的访问者使用公共ip访问此站点时,在客户端发送“分组”分组的标头中,目标地址写为防火墙如果将目标地址重写为web服务器的内部网ip,然后将此包发送到内部网的web服务器,则该包将穿过防火墙,成为公共ip到内部网ip的访问DNAT。 根据目标网络地址转换MASQUERADE并模拟地址,在iptables中效果接近SNAT。 但是,存在一些差异,使用SNAT时,出口ip的地址范围可以是一个,也可以是多个。 例如,以下命令表示10.8.0.0网段中的所有数据包都是SNAT

拿出192.168.5.3的ip

iptables -t nat

- a发布

-s

10.8.0.0/255.255.255.0

-o eth0

-j SNAT

待办事项

192.168.5.3

以下命令指示SNAT所有10.8.0.0网段的数据包

发行192.168.5.3/192.168.5.4/192.168.5.5等几个ip

iptables -t nat

- a发布

-s

10.8.0.0/255.255.255.0

-o eth0

-j SNAT

待办事项

192.168.5.3-192.168.5.5

这就是SNAT的使用方法。 这意味着NAT可以是一个地址,也可以是多个地址。 但是,对于SNAT,无论有多少个地址,都必须明确指定要SNAT的ip。 如果当前系统使用的是ADSL动态拨号方式,则每次拨号都会改变出口ip192.168.5.3,变更幅度较大,不一定是192 .

192.168.5.5范围内的地址

此时,如果像现在这样配置iptables,就会出现问题。 每次拨号都会更改服务器地址,但iptables规则中的ip不会自动更改。 每次地址发生变化时都必须手动修改iptables。 将规则中的静态ip更改为新ip是非常困难的MASQUERADE是针对这样的场景设计的。 他的角色通过从服务器网卡自动获取当前ip地址来创建NAT。 例如,如果这样配置了iptables-tnat-a postrouting-s 10.8.0.0/255.255.0-oeth0- jmasquerade,则不指定SNAT的目标ip 无论在当前eth0出口处获得什么动态ip,MASQUERADE都会自动读取eth0的当前ip地址并退出SNAT,从而实现出色的动态SNAT地址转换*

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。