iptables snat中SNAT和MASQUERADE的区别

IPtables中SNAT,DNAT和MASQUERADE的区别_百度知道
IPtables中SNAT,DNAT和MASQUERADE的区别
提问者采纳
3到192,不管是几个地址。DNAT是destination network address translation的缩写即目标网络地址转换典型的应用是,有个web服务器放在内网,这个数据包的报头里边.0,对于SNAT。当访问的时候IPtables中可以灵活的做各种网络地址转换(NAT)网络地址转换主要有两种.5这就是SNAT的使用方法,客户端发出一个数据包,而iptables规则内的ip是不会随着自动变化的每次地址变化后都必须手工修改一次iptables。DNAT.0&#47,对于那些IP不固定的场合,出口ip的地址范围可以是一个,那么,例如.0&#47,DNAT.168.0 -o eth0 -j SNAT –to-source 192,把数据包中的源地址部分替换为指定的IP,地址伪装,即可以NAT成一个地址,就是指数据包从网卡发送出去的时候,比如拨号网络或者通过dhcp分配IP的情况下。防火墙会把这个数据包的报头改写一次,就得用MASQUERADE,但也有一些区别,也可以是多个,可是因为网关做了DNAT.255;255.5,基于源地址的地址转换,自动获取当前ip地址来做NAT比如下边的命令.5.168.5,并从公网ip变成了一个对内网地址的访问了.168。因为.255,MASQUERADE是SNAT的一个特例.0.5,配置公网ip.168,把规则里边的固定ip改成新的ip这样是非常不好用的MASQUERADE就是针对这种场景而设计的,配置内网ip,而SNAT是在数据包发送出去的时候才进行,不一定是192.5等几个ip然后发出去iptables -t nat -A POSTROUTING -s 10,这个服务器收到的数据包的报头里边的“源地址”.8,数据包就穿透了防火墙.5,你实际上访问的是B.8:SNAT和DNATSNAT是source network address translation的缩写即源地址目标转换比如.0&#47.4&#47。MASQUERADE是用发送数据的网卡上的IP来替换源IP.0网段的数据包SNAT成192,路由是按照目的地址来选择的,出口ip192.0 -o eth0 -j MASQUERADE如此配置的话.5,多个PC机使用ADSL路由器共享上网.0 -o eth0 -j SNAT –to-source 192.0网段的数据包SNAT成192;255,表现为如果你想访问A,目标地址写的是防火墙的公网ip.0;192,即DNAT,服务器地址都会变化.255。MASQUERADE。PC机访问外部网络的时候,DNAT是在PREROUTING链上来进行的.3都会改变而且改变的幅度很大,路由器将数据包的报头中的源地址替换成路由器的ip:SNAT,因此是在POSTROUTING链上进行的但使用SNAT的时候,把所有访问A的数据包的目的IP全部修改为B。SNAT是指在数据包从网卡发送出去的时候.168.255,基于目标的网络地址转换 .8,这样.255.168。当外部网络的服务器比如网站web服务器接到访问请求的时候.0.168,因此,互联网上的访问者使用公网ip来访问这个网站.3&#47,必须明确的指定要SNAT的ip假如当前系统用的是ADSL动态拨号方式,他的日志记录下来的是路由器的ip地址.5范围内的地址这个时候如果按照现在的方式来配置iptables就会出现问题了因为每次拨号后,而不是pc机的内网ip,然后再把这个数据包发送到内网的web服务器上这样,那么每次拨号,因此.5:如下命令表示把所有10。这是因为.3-192.3如下命令表示把所有10.168.168.3的ip然后发出去iptables -t nat -A POSTROUTING -s 10.8,每个PC机都配置了内网IP.255,MASQUERADE都是NAT,前端有个防火墙,将目标地址改写成web服务器的内网ip,在iptables中有着和SNAT相近的效果,不用指定SNAT的目标ip了不管现在eth0的出口获得了怎样的动态ip,也可以NAT成多个地址但是,接收方就认为数据包的来源是被替换的那个IP的主机:iptables -t nat -A POSTROUTING -s 10.0,修改数据包中的目的IP,从服务器的网卡上.8.5;192,他的作用是.5.5.168;255,已经被替换了。所以叫做SNAT
其他类似问题
为您推荐:
snat的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁iptables二之防火墙SNAT源地址转换,MASQUERADE地址伪装之DNAT目标地址转换讲解和实验演示
一)SNAT源地址装换,俗称将私网地址转换成公网地址Snat:sourcenetworkaddresstranslation意思是当多个Pc机客户端需要共享adsl路由上网时,每个pc机都配置了内
互联网客户端防火墙内网IP:172.168.100.2外网:172.168.100.1IP:192.168.1.2GW:172.168.100.1内网:192.168.1.1GW:192.168.1.1开启:转发iptables&-t&nat&-I&PREROUTING&-d&172.168.100.1&-j&DNAT&--to-destination&192.168.1.2测试ping通了。本文出自 “落叶飘远方” 博客,请务必保留此出处,
你最喜欢的4011人阅读
zigbee(11)

第一种方法,利用NLME.h里面定义的专门API
获取设备自身IEEE地址
extern byte *NLME_GetExtAddr( void );
获取设备自身网络地址
extern uint16 NLME_GetShortAddr( void );
获取父设备网络地址 & &
extern uint16 NLME_GetCoordShortAddr( void );
获取父设备IEEE地址
extern void NLME_GetCoordExtAddr( byte * );
第二种方法:
利用zb_GetDeviceInfo()函数-------------------这个方法测试没通过,不知道为什么老是提示函数没定义,我将所有头文件都加入了,还是这个提示!!
查看该函数定义即可知用法:
void zb_GetDeviceInfo ( uint8 param, void *pValue )
switch(param)
&&&&case ZB_INFO_DEV_STATE:
&&&&&&osal_memcpy(pValue, &devState, sizeof(uint8));
&&&&case ZB_INFO_IEEE_ADDR:
&&&&&&osal_memcpy(pValue, &aExtendedAddress, Z_EXTADDR_LEN);
&&&&case ZB_INFO_SHORT_ADDR:
&&&&&&osal_memcpy(pValue, &_NIB.nwkDevAddress, sizeof(uint16));
&&&&case ZB_INFO_PARENT_SHORT_ADDR:
&&&&&&osal_memcpy(pValue, &_NIB.nwkCoordAddress, sizeof(uint16));
&&&&case ZB_INFO_PARENT_IEEE_ADDR:
&&&&&&osal_memcpy(pValue, &_NIB.nwkCoordExtAddress, Z_EXTADDR_LEN);
&&&&case ZB_INFO_CHANNEL:
&&&&&&osal_memcpy(pValue, &_NIB.nwkLogicalChannel, sizeof(uint8));
&&&&case ZB_INFO_PAN_ID:
&&&&&&osal_memcpy(pValue, &_NIB.nwkPanId, sizeof(uint16));
&&&&case ZB_INFO_EXT_PAN_ID:
&&&&&&osal_memcpy(pValue, &_NIB.extendedPANID, Z_EXTADDR_LEN);
例如要获取设备短地址,可以这样:
uint16 my_short_
zb_GetDeviceInfo(ZB_INFO_SHORT_ADDR,my_short_addr);
第三种方法:利用上述zb_GetDeviceInfo()函数的定义,同样可知,通过读取_NIB的值也可以获取地址信息,如下调用即可
uint16 my_short_addr = _NIB.nwkDevA
第四种方法:直接读NV,方法如下:
uint8 pValue[8];
osal_nv_read(ZCD_NV_EXTADDR , Z_EXTADDR_LEN, size, pValue);
pValue里保存的即是设备扩展地址
第五种方法,利用OnBoard.c里定义的全局变量aExtendedAddress获取IEEE地址,如下:
uint8 * pValue[Z_EXTADDR_LEN];
osal_memcpy(pValue, &aExtendedAddress, Z_EXTADDR_LEN);
第六种方法,利用ZMacGetReq()函数,如下:
uint8 * pValue[Z_EXTADDR_LEN];
ZMacGetReq(ZMacExtAddr,pValue);
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:841277次
积分:8757
积分:8757
排名:第1280名
原创:112篇
转载:96篇
评论:121条
(1)(1)(1)(1)(4)(3)(2)(4)(3)(3)(9)(3)(6)(3)(4)(5)(4)(3)(7)(2)(3)(4)(15)(6)(11)(9)(19)(7)(6)(7)(8)(3)(6)(7)(7)(6)(6)(9)

我要回帖

更多关于 iptables masquerade 的文章

 

随机推荐