You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

如何实现外部主机访问GNS3桥接接口内的虚拟防火墙?

如何实现外部主机访问GNS3桥接接口内的虚拟防火墙?

看起来你遇到的是典型的跨网段流量转发问题,结合你的拓扑和测试结果,我来一步步帮你解决:

1. 开启Ubuntu服务器的IP转发功能

默认情况下,Ubuntu会禁用IP转发(也就是不让流量在不同网卡接口之间跳转),这就是为什么你的笔记本流量到了服务器就被丢弃的核心原因。

  • 临时生效(重启后失效):在服务器上执行以下命令:
    echo 1 > /proc/sys/net/ipv4/ip_forward
    
  • 永久生效:编辑/etc/sysctl.conf文件,找到net.ipv4.ip_forward=1这一行,去掉前面的注释符号#,然后执行下面的命令让配置立即生效:
    sysctl -p
    

2. 调整防火墙(iptables/ufw)的转发规则

即使开启了IP转发,Ubuntu的默认防火墙规则可能还是会拦截跨接口的转发流量,需要手动放行:

如果用原生iptables:

先查看当前的转发规则:

iptables -L FORWARD -v

如果看到有DROP类型的规则,添加以下两条规则允许双向转发:

# 允许从笔记本所在网段(192.168.1.0/24)到GNS3虚拟网段(192.168.122.0/24)的流量
iptables -A FORWARD -i enp9s0 -o virbr0 -j ACCEPT
# 允许从虚拟网段回到笔记本网段的回程流量
iptables -A FORWARD -i virbr0 -o enp9s0 -j ACCEPT

如果用ufw防火墙:

编辑/etc/default/ufw文件,找到DEFAULT_FORWARD_POLICY="DROP"这一行,把它改成:

DEFAULT_FORWARD_POLICY="ACCEPT"

然后重启ufw让配置生效:

ufw reload

3. 给Palo Alto虚拟防火墙配置回程路由

现在你的防火墙只能ping通服务器和virbr0,它不知道怎么把回包发送到笔记本所在的192.168.1.0/24网段,所以需要添加一条静态路由:

  • 登录Palo Alto防火墙的管理界面
  • 进入网络 > 静态路由页面
  • 添加一条新的静态路由:
    • 目标网段:192.168.1.0/24
    • 下一跳地址:192.168.122.1(也就是virbr0的IP)
    • 选择防火墙连接到virbr0的那个接口
  • 保存并提交配置

完成以上三步后,你再从笔记本ping虚拟防火墙,或者从防火墙ping笔记本,应该就能正常通了。

备注:内容来源于stack exchange,提问作者Zach

火山引擎 最新活动