请教一条 iptables 转发

查看 44|回复 3
作者:zsj1029   
1 、当前主机 A 有一张物理网卡 eth0 ,ip 10.10.10.1
2 、这台 A 主机新增一张虚拟网卡 vnet0 ,ip 10.10.10.10 ,外部测试以上两个 ip 均可以 ping 通
目标:我用 10.10.10.50 主机 B ,访问 A 主机 vnet 10.10.10.10 时,将流量转发到另一台主机 c:10.10.10.20 ,同时限制-s 来源 ip 为我发起请求的这台主机 B
目前
iptables -t nat -A POSTROUTING -j MASQUERADE
iptables -t nat -A PREROUTING -i vnet0 -s 10.10.10.50 -j DNAT --to-destination 10.10.10.20
测试无效
测试了一下午没有搞定,求大佬指路。
或者有什么更好的方案
目前是这样的需求,cli 客户端 B 向 A 发起请求 c 资源(很多 c ),A 批准后经过 A 路由流量转发到 c 上。
访问 A 的虚拟网卡 vnet0 流量转发到 c1 ,访问 A 的虚拟网卡 vnet1 转发到 c2 ,依次类推,同时限制-s 来源为访问主机 ip
kiah   
# 清除现有规则
iptables -t nat -F
# 配置 POSTROUTING 规则
iptables -t nat -A POSTROUTING -j MASQUERADE
# 配置 PREROUTING 规则,将特定源 IP 的流量转发到目标主机
iptables -t nat -A PREROUTING -i vnet0 -s 10.10.10.50 -j DNAT --to-destination 10.10.10.20
zsj1029
OP
  
@kiah 我每次都清除才测试的,不行大佬,我测试下来如果把-i vnet0 去掉,就可以,但是做不到指定网卡流量转发了
Yien   
这问题我最近测试过,如果 .50 IP 主机的网关不是主机 A 的.1 IP 的话,无法实现重定向到 20
您需要登录后才可以回帖 登录 | 立即注册

返回顶部