若要疑難排解 KVM 主機的防火牆問題,您可以查看主機上套用的防火牆規則。

取得 KVM 主機上的 VIF 清單

localhost.localdomain> get firewall vifs 
***sample output***
                            Firewall VIFs                             
----------------------------------------------------------------------VIF count: 3
 1   239140cf-6c6c-464f-96eb-dfb13203171e
 2   eb277d27-0d28-4fb0-82ce-f59d86ea5bee
 3   afb2aa98-85ee-4bb4-8318-d699fa84c7f0

探索套用至特定 VIF 的防火牆規則

依 UUID 指定 VIF (在此範例中為 239140cf-6c6c-464f-96eb-dfb13203171e)。
localhost.localdomain> get firewall 239140cf-6c6c-464f-96eb-dfb13203171e ruleset rules 
***sample output***
                            Firewall Rules                            
----------------------------------------------------------------------
VIF UUID : 239140cf-6c6c-464f-96eb-dfb13203171e
 Ruleset UUID : 7c5838e5-ab75-427d-b4dd-9452e5607805
 Rule count : 5345
 rule 3073 inout protocol any from any to any profile fbb4b84f-f6c1-40c5-a509-f7c6f81fe7d9 accept with log tag dns;
 rule 3072 inout protocol any from any to any profile 6bc09f62-a188-4e36-9708-291af7237039 accept with log tag youtube.com;
 rule 3072 inout protocol any from any to any profile 27b9a15b-8071-4d09-a7e8-71eecfca0779 accept with log tag youtube.com;
 rule 3075 inout protocol tcp from addrset 81d95211-ab77-4f2d-beaf-3e15b045fb5e to addrset 3d41a802-a899-4464-ba2b-da9240598552 port 5000 accept with log tag portlist1;
 rule 3075 inout protocol tcp from addrset 81d95211-ab77-4f2d-beaf-3e15b045fb5e to addrset 3d41a802-a899-4464-ba2b-da9240598552 port 4992/0xfff8 accept with log tag portlist1;
 rule 3075 inout protocol tcp from addrset 81d95211-ab77-4f2d-beaf-3e15b045fb5e to addrset 3d41a802-a899-4464-ba2b-da9240598552 port 4864/0xff80 accept with log tag portlist1;

取得特定 VIF 中使用的位址集清單

依 UUID 指定 VIF (在此範例中為 239140cf-6c6c-464f-96eb-dfb13203171e)。
localhost.localdomain> get firewall 239140cf-6c6c-464f-96eb-dfb13203171e addrsets 
***sample output***
                        Firewall Address Sets                         
----------------------------------------------------------------------
Address set count : 11
  UUID : 09f6da50-bcf2-4347-91a7-df00dca003a6
  Address count : 7
    mac 00:50:56:81:9b:2e
    mac 00:0c:29:03:4d:0d
    mac 00:0c:29:03:4d:03
    ip 10.172.177.231
    ip 10.172.177.111
    ip 192.168.1.11
    ip 192.168.2.11

取得特定 VIF 中使用的 APPID 和 FQDN 清單

若要檢查 Hyspervisor 上的 FQDN 設定檔,請執行命令 localhost.localdomain> get firewall <vif-id> profile

尋找在原則 UI 上設定的 URL。

依 UUID 指定 VIF (在此範例中為 239140cf-6c6c-464f-96eb-dfb13203171e)。
localhost.localdomain> get firewall 239140cf-6c6c-464f-96eb-dfb13203171e profile 
***sample output***
                          Firewall Profiles                           
----------------------------------------------------------------------
Profiles count : 9
  UUID : 87de2b6b-bdf5-49b6-bae2-824f455a21a4
  Attribute count : 2
    FQDN : www\.youtube\.com
    FQDN : .*\.microsoft\.com

  UUID : 68dc8321-5cb5-4cd4-b1d1-14961d71c05e
  Attribute count : 1
    APP_ID : APP_SSL

取得特定 VIF 中使用的 APPID 和 FQDN 清單

依 UUID 指定 VIF (在此範例中為 239140cf-6c6c-464f-96eb-dfb13203171e)。
localhost.localdomain> get firewall 239140cf-6c6c-464f-96eb-dfb13203171e profile 
***sample output***
                          Firewall Profiles                           
----------------------------------------------------------------------
Profiles count : 9
  UUID : 87de2b6b-bdf5-49b6-bae2-824f455a21a4
  Attribute count : 2
    FQDN : www\.youtube\.com
    FQDN : .*\.microsoft\.com

  UUID : 68dc8321-5cb5-4cd4-b1d1-14961d71c05e
  Attribute count : 1
    APP_ID : APP_SSL

探索特定 VIF 的 FQDN

localhost.localdomain> get firewall 239140cf-6c6c-464f-96eb-dfb13203171e fqdn 
                        Firewall Profile FQDN                         
----------------------------------------------------------------------
Profiles count  : 3
  Profile UUID  : 87de2b6b-bdf5-49b6-bae2-824f455a21a4
  FQDN count    : 2
    FQDN UUID   : 37efd4dd-961c-4756-afdd-ec04f44b6c10
    Value       : www\.youtube\.com
    IP set      : 172.217.6.46

透過 Linux Conntrack 模組檢查連線。

在此範例中,尋找兩個特定 IP 位址之間經過的流量。

ovs-appctl dpctl/dump-conntrack -m | grep 192.168.1.15 | grep 192.168.1.16
icmp,orig=(src=192.168.1.15,dst=192.168.1.16,id=7972,type=8,code=0),
reply=(src=192.168.1.16,dst=192.168.1.15,id=7972,type=0,code=0),
id=2901517888,zone=61437,status=SEEN_REPLY|CONFIRMED,mark=2083,labels=0x1f

檢查 KVM 主機上的 FQDN 角色和設定檔

您可以建立防火牆規則,以使用 FQDN/URL 篩選特定網域。若要檢查 Hyspervisor 上的 FQDN 設定檔,請執行命令 localhost.localdomain> get firewall <vif-id> profile。尋找在原則 UI 上設定的 URL。

具有 APP_ID 和 FQDN 項目之已發佈內容設定檔的範例 nsxcli 輸出:
localhost.localdomain> get firewall 989bdcf6-c6fc-47cd-86a3-367e552dba32 profile 
 Firewall Profiles 
----------------------------------------------------------------------
Profiles count : 3
 UUID : b34b868e-f113-4463-84a6-14736e50168e
 Attribute count : 1
 APP_ID : APP_HTTP
UUID : c4689750-d5e1-41f5-ba2c-0bfc846ed494
 Attribute count : 1
 FQDN : www\.youtube\.com
UUID : 77a599db-b2d3-4510-bbff-fa2bb31aceae
 Attribute count : 1
 APP_ID : APP_DNS
localhost.localdomain> get firewall 989bdcf6-c6fc-47cd-86a3-367e552dba32 fqdn
Firewall Profile FQDN 
----------------------------------------------------------------------
Profiles count : 1
Profile UUID : c4689750-d5e1-41f5-ba2c-0bfc846ed494
FQDN count : 1
FQDN UUID : 1c9d612c-c398-409e-b6f0-f1ec49b778fe
Value : www\.youtube\.com
IP set : 172.217.6.46, 172.217.164.110, 172.217.5.110, 216.58.194.206, 172.217.6.78, 172.217.0.46, 216.58.195.78, 216.58.194.174