-A 添加规则
PREROUTING 才入站的
-t 表
nat 控制 网络地址转换的表
-p 协议
!排除
-s 指定源地址
!-s 叹号用在-s之前 表示 排除指定的地址
--dport 25 目的端口25
-j DNAT -j表示跳转,就是动作,跳转到其他的自定义表或者执行预制的动作,这里跳到DNAT修改目的地址。
总的来说就是对从外网发往内网的目的端口25(邮件服务器)的包进行转发,排除RF-IP这一段地址。理论上可以的,vmware虚拟机和云服务器其实和传统物理服务器用起来没差别。但如果你说的云服务器是公有云,是vmware在你的局域网,不推荐组合起来搭建hadoop,因为互联网的网络延迟比本地高,集群会不稳,非要做的话,vmware虚拟机需要用dnat映射地址到公网当服务器迁移,因为DNS未同步或某些人使用ip访问,一些流量还是会流向老的服务器。
使用iptables及其伪装特性,将所有流量转发到老的服务器。 点击看iptables的介绍 。
本文假设没有运行的iptables,至少没有针对prerouting链和postrouting链的NAT表的转发规则。
1) 首先开启端口转发
# echo "1" > /proc/sys/net/ipv4/ip_forward
或sysctl netipv4ip_forward=1
2) 增加端口转发
将端口1111上的流量转发到主机2222 上的端口1111。
# iptables -t nat -A PREROUTING -p tcp --dport 1111 -j DNAT --to-destination 2222:1111
然后告诉IPtables伪装起来(masquerade)
# iptables -t nat -A POSTROUTING -j MASQUERADE
仅仅重定向一个固定网络甚至是一台主机的流量
# iptables -t nat -A PREROUTING -s 19216811 -p tcp --dport 1111 -j DNAT --to-destination 2222:1111
仅仅重定向一个网段的流量
# iptables -t nat -A PREROUTING -s 19216810/24 -p tcp --dport 1111 -j DNAT --to-destination 2222:1111
这就可以进行Linux端口转发流量了。
查看转发规则 sudo iptables -t nat -nL
1) docker bridge模式
2) 安全方面,同主机上端口指定网卡ip上的流量转发
3) 端口转发到另外的服务器,见上边案例
4) snat场景
5) dnat场景,内网访问外网
>本文主要介绍如何使用iptbales实现linux24下的强大的NAT功能。关于iptables的详细语法请参考“用iptales实现包过虑型防火墙”一文。需要申明的是,本文绝对不是NAT-HOWTO的简单重复或是中文版,在整个的叙述过程中,作者都在试图用自己的语言来表达自己的理解,自己的思想。一、概述1什么是NAT在传统的标准的TCP/IP通信过程中,所有的路由器仅仅是充当一个中间人的角色,也就是通常所说的存储转发,路由器并不会对转发的数据包进行修改,更为确切的说,除了将源MAC地址换成自己的MAC地址以外,路由器不会对转发的数据包做任何修改。NAT(NetworkAddressTranslation网络地址翻译)恰恰是出于某种特殊需要而对数据包的源ip地址、目的ip地址、源端口、目的端口进行改写的 *** 作。2为什么要进行NAT我们来看看再什么情况下我们需要做NAT。假设有一家ISP提供园区Internet接入服务,为了方便管理,该ISP分配给园区用户的IP地址都是伪IP,但是部分用户要求建立自己的配合使用成为透明代理,在对>做在网关上做一条DNAT
iptables -t nat -A PREROUTING -p tcp -dport 80 -d 19216828 -j DNAT --to-destination
192168115
同时开启路由转发功能,修改/etc/sysctrlconf
netipv4ip_forward = 1
做DNAT 是ping内网的
访问时 >
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)