通过iptables实现数据包转发

在centos6.2环境下,通过iptables设置,实现主机B无法直接与C通信时,数据包经由主机A转发,保持目的地址为B,使C收到的数据包看似来自B。实验涉及多台虚拟机和网络配置,并利用netfilter/iptables进行转发规则设定。同时,为了使转发功能开机自动生效,需编辑sysctl.conf文件,并在主机C上使用tcpdump进行包捕获验证。
摘要由CSDN通过智能技术生成

实验环境:

系统:centos6.2  linux2.6

vmware虚拟环境测试


有A、B、C三台机器

A有一个块网卡: eth1:1923168.66.225

B一个网卡:eth0:192.168.66.10

C一个网卡:eth0:192.168.66.11

由于某种需要,我希望B能将数据包发给C,但是又不能直接发送,而A又能与B、C交互数据包,此时,我就希望,B将数据包给A,然后A再把数据包,转发给C,与此同时,A要将转发的数据包的目的地址改成 B,那么当C收到A转发过来的包时,就像是B直接发给C的一样

可以用 netflter/iptables

对A进行配置:

$ iptables -t filter -A FORWARD -o eth1 -p tcp -j ACCEPT   #将A能够转发数据包
$ iptables -t filter -A FORWARD -i eth1 -p tcp -j ACCEPT   
#将进入路由前的数据的目的IP改成 C的IP ,端口号可以根据自己的情况来,我用的8080
$ iptables -t nat  -A PREROUTING -p tcp -m tcp --dport 8080 -j DNAT --to-destination 192.168.66.10:8080   
#将要转发的数据包的源IP改成A 的IP
$ iptables -t nat -A POST
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值