1.问题描述
现象:在虚拟机内部部署了某个服务,假设端口是5000,如果外部可以直接跟192.168.11.0/24网段互通,那么直接访问
curl 192.168.11.1:5000
如果外部网络跟192.168.11.0/24网段之间通不了,那么就需要通过iptables做转发了
这时候就可以通过
来直接访问。
2.访问失败
现在发现ping 192.168.11.1网段可以通,但是访问相关服务出现问题。那么就可能是转发出现了问题,这是好就要看看iptables的转发规则
前面accept的两条规则是小编后来加的,可以看到后面的reject是拒绝出了icmp报文以外的所有报文。
3.解决办法
其实从能ping通内部ip,不能用内部ip地址加端口访问的时候,已经把问题给定位到了,也就是该网段的转发报文被拒绝了,那么只需要配置foward转发规则即可
-I是插入的意思。默认在第一 条插入,
-s是source,-d是目的。
配置了上面两条防火墙规则,那么报文从宿主机192.168.103.41上通过的时候,报文就不会被丢弃,而是转发到对应的
192.168.11.0/24网段了。所以问题就被解决了