AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 941622
Accepted
Esa Jokinen
Esa Jokinen
Asked: 2018-11-27 02:07:17 +0800 CST2018-11-27 02:07:17 +0800 CST 2018-11-27 02:07:17 +0800 CST

将 BovpnVif 路由添加到 0.0.0.0/0 后,WatchGuard Firebox 自身的 Internet 连接失败

  • 772

环境:公司网络在总部有一个带有 Total Security Suite 的 Firebox M 系列设备。每个分支机构都有一个较小的 T 系列 Firebox,没有订阅服务。因此,来自分支机构的所有流量都通过总部的 M 系列设备进行路由。一些分支机构 Firebox 具有静态 IP,一些通过 DHCP 获得。

有时隧道可能会出现一些问题(例如,如果 HQ 网络出现故障)。因此,分支机构 Firebox 需要能够放弃0.0.0.0/0通过隧道的路由并独立工作一段时间,因为 BO Internet 连接对业务至关重要。这适用于 BO 虚拟接口,但不适用于0.0.0.0/0BO GW & Tunnel。

简化(只有一个 External 和 Trusted if)相关配置,一个带有 DHCP 的分支机构。

  • Firebox-HQ ( 10.9.0.1) - M670 [Fireware OS v12.2.1.B572649]
    • 接口(路由模式)
      • eth0: ISP1 [外部] - 198.51.100.123/24(静态)
      • eth1: 受信任 [受信任] -10.9.0.1/24
    • VPN 接口 ( bvpn20): BovpnVif.BO20 [IKEv1]
      • 路线到10.9.20.0/24
  • Firebox-BO20 ( 10.9.20.1) - T55 [Fireware OS v12.2.1.B572649]
    • 接口(路由模式)
      • DNS 服务器:192.0.2.10& 192.0.2.20(ISP2 的 DNS 服务器)
      • eth0: ISP2 [外部] - 203.0.113.33/24(DHCP)
      • eth1: 受信任 [受信任] -10.9.20.1/24
    • VPN 接口 ( bvpn1):BovpnVif.HQ [IKEv1]
      • 路线到0.0.0.0/0
      • VPN 设置:[x] 当 BOVPN vif 的隧道关闭时删除 VPN 路由。

当隧道关闭时,一切都按预期工作。Firebox-BO20 可以用作其eth1网络的 DNS 解析器。10.9.20.0/24和 Firebox 本身都可以访问 Internet 。

问题:当隧道开通并添加0.0.0.0/0路由时bvpn1,客户端eth1可以通过VPN和总部的所有资源(包括DNS服务器)访问Internet。

IPv4 Routes
------------
Destination     Gateway         Genmask         Flags   Metric    Interface   
0.0.0.0         0.0.0.0         0.0.0.0         U       1         bvpn1       
0.0.0.0         203.0.113.1     0.0.0.0         UG      5         eth0        
10.9.20.0       0.0.0.0         255.255.255.0   U       0         eth1        
203.0.113.0     0.0.0.0         255.255.255.0   U       0         eth0        
127.0.0.0       0.0.0.0         255.0.0.0       U       0         lo           

但是,Firebox 停止作为 DNS 解析器工作,并失去自己的 Internet 连接。这是因为 Firebox 自己的连接也开始使用该路由。

  • ISP2 的 DNS 服务器无法从 ISP1 访问192.0.2.10。192.0.2.20
  • 网络上的设备10.9.20.0/24可以通过bvpn1.
  • Firebox 不10.9.20.1通过隧道使用其内部 IP,但203.0.113.33.
  • 防火墙规则Any From Firebox-00是硬编码的,不会显示在策略管理器中。否则很容易强迫它eth0与<policy-routing>.

有防火墙策略允许两个设备上的所有必要流量;因此,问题仅限于路由。

routing
  • 1 1 个回答
  • 656 Views

1 个回答

  • Voted
  1. Best Answer
    Esa Jokinen
    2018-11-27T02:07:17+08:002018-11-27T02:07:17+08:00

    对于ISP2 的 DNS 服务器,您需要将静态路由添加到 Firebox-BO20。

    • 从 Fireware Polixy Manager > Network > Routes...
      • 添加...静态路由,主机 IPv4,到192.0.2.10,网关203.0.113.1指标0。
      • 添加...静态路由,主机 IPv4,到192.0.2.20,网关203.0.113.1指标0。

    将设置保存到 Firebox 后,连接隧道的路由表如下所示:

    IPv4 Routes
    ------------
    Destination     Gateway         Genmask         Flags   Metric    Interface   
    0.0.0.0         0.0.0.0         0.0.0.0         U       1         bvpn1       
    0.0.0.0         203.0.113.1     0.0.0.0         UG      5         eth0        
    10.9.20.0       0.0.0.0         255.255.255.0   U       0         eth1        
    192.0.2.10      203.0.113.1     255.255.255.255 UGH     0         eth0        
    192.0.2.20      203.0.113.1     255.255.255.255 UGH     0         eth0        
    203.0.113.0     0.0.0.0         255.255.255.0   U       0         eth0        
    127.0.0.0       0.0.0.0         255.0.0.0       U       0         lo          
    

    另一种选择是使用可在两个 ISP 上运行的公共 DNS 服务器(如 Cloudflare 的1.1.1.1/1.0.0.1或 Google 的8.8.8.8/ )。8.8.4.4这样您就不需要在 Firebox-BO20 上添加路由,但是下面的解决方案对于这两种方法都是强制性的。


    对于连接隧道时Firebox-BO20 的 Internet 连接,事情有点复杂,因为 Firebox 在通过隧道发送数据包时使用其外部 IP。如果您有与登录匹配的规则,例如 HTTPS 代理,您将从日志中看到这一点,例如:

    Allow 203.0.113.33 23.99.53.216 https/tcp 46452 443 BovpnVif.BO20-bvpn20 ISP1 
        HTTPS Request   (HTTPS-proxy-00) HTTPS-Client.Standard proc_id="https-proxy" 
        ... sni="services.watchguard.com" cn="services.watchguard.com" 
    

    这0.0.0.0/0在 Firebox-BO20 上有一条路由,但在 Firebox-HQ 隧道上没有路由bvpn20。

    • 您需要编辑 BOVPN 虚拟接口 BovpnVif.BO20 并添加到 Firebox-BO20 的外部 IP 的路由。如果 IP 是静态的,那将是单个203.0.113.33/32.

      在这种情况下,Firebox-BO20 的外部接口在 DHCP 上,您需要一个覆盖它可以获得的所有可能 IP 的路由,例如整个 DHCP 池203.0.113.0/24。当然,这意味着 Firebox-HQ 也会将此路由用于该范围内的其他地址。这可能会导致某些用例出现问题——如果确实如此,您需要获取静态 IP。

    • 默认情况下,Firebox 会为专用网络添加动态 NAT 192.168.0.0/16,172.16.0.0/12并且10.0.0.0/8. 由于外部 IP203.0.113.33不在这些网络中,您需要将 (Network > NAT...) Dynamic NAT 从 BovpnVif.BO20 添加到 Any-External。幸运的是,这可以使用 BOVPN 虚拟接口的现有内置别名来完成。

    • 0

相关问题

  • 无法通过 Ubuntu VPN 访问外部网络

  • 将路由永久添加到 Solaris 10

  • Quagga 套件中的 ./configure --disable-zebra 代表什么?

  • 使用特定接口进行出站连接(Ubuntu 9.04)

  • Linux TC/策略路由工具

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve