vm meetup_tokyo #1 NSX の運用と DFW トラブルシューティング

富士通クラウドテクノロジーズ株式会社
富士通クラウドテクノロジーズ株式会社富士通クラウドテクノロジーズ株式会社
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
VM Meetup Tokyo #1
NSX の運用
DFWトラブルシューティング
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
自己紹介
2
樋口 茂幸
所属: 富士通クラウドテクノロジーズ株式会社
Model: 2012年度入社モデル エンジニア
Uptime: 社会人7年目
State: Connected
Twitter: @YOMOGItanpop(つぶやいていない)
興味分野:
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 3
ニフクラと NSX
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
◼ 2010年よりクラウド事業を開始
ニフティ株式会社時代のISP事業やWebサービス事業で培ったノウハウとインフラ資産を活用
◼ 2017年4月社名変更
ニフティ株式会社から富士通クラウドテクノロジーズに
◼ 2017年11月ブランド変更、ニフティクラウドからニフクラに
4
1980年~
パソコン通信/ISP通信/WEBサービス事業
2010年~
クラウド事業
ノウハウとインフラ資産の活用
2017年
VMware APJ最大規模!
ニフクラってなに?
ML/mBaaS/PaaS も
2006年から、ずっと VMware
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
どこで NSX を使っているのか?
5
バックアップ/DRサービス
for VMware vSphere®
デスクトップサービス
(専有型)
ニフクラ
IaaS
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
どこで NSX を使っているのか?
6
バックアップ/DRサービス
for VMware vSphere®
デスクトップサービス
(専有型)
ニフクラ
IaaS
※一部 を利用
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
NSX 利用で特に変わっているところは?
7
ニフクラ
IaaS
リモートアクセスVPNゲートウェイ
2019年4月リリース
new
活性移行
以前の製品
ファイアウォールマイグレーション
数10データセンターに展開、1データーセンター内でも世界最大規模の利用
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
運用のチーム体制はどうなっているのか?
8
vCenter/ESXi
担当者
物理機器
担当者
ニフクラ
アプリケーション担当者
顧客サポート
担当者
NSX 担当者
vib
企画
設計
運用開発
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
運用ツールはどうなっているのか
9
API監視
アプリケーション
(自作:nsxraml 利用)
ファイアウォール
ログパース
アプリケーション
(自作)
ESXiNSX Manager
ユーザー
構成管理
運用者
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
運用ツール開発はどうなっているのか
コミット
テスト
環境作成 テスト
リリース
NS
X
VM VM
nested
ESXi
nested
ESXi
nested
ESXi
vC VM VM
テスト環境 VMware vSphere®
nested の環境をクローン
NS
X
VM VM
nested
ESXi
nested
ESXi
nested
ESXi
vC VM VM
テスト環境 VMware vSphere®
ESXi ESXi
テスト
環境
テスト
環境
テスト
環境
new
VM 変更したコードを実行し
vSphere を含む全体の挙動をテスト
10
CI 利用
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 11
DFWのトラブルシューティング
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
大きく分けると2種類
IP Port Act
A 80 Allow
12
IP Port Act
A 80 Allow
A 443 Allow
設定が反映されていない ルールで許可しているがドロップ
SrcIP:A
80/tcp
IP Port Act
A 80 Allow
参考: vForum 2016 資料 「マイクロセグメンテーション運用のためのNSX for vSphere -Distributed Firewall トラブルシューティング」
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
大きく分けると2種類
IP Port Act
A 80 Allow
13
IP Port Act
A 80 Allow
A 443 Allow
設定が反映されていない ルールで許可しているがドロップ
SrcIP:A
80/tcp
IP Port Act
A 80 Allow
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
設定が反映されていない場合の切り分け
◼ 設定したファイアウォールルールの設定は左のような
流れになっている
14
NSX Manager
ESXi
dvfilter
vsip
vsfwd
全体像
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
設定が反映されていない場合の切り分け
◼ まずは意図したとおりのルールがNSXに入っているか確認
する
◼ UI や API で確認できる
15
NSX Manager
ESXi
dvfilter
vsip
vsfwd
全体像
% curl -s -k -u admin:$PASS -H 'Accept: application/json‘
https://$NSXIP/api/4.0/firewall/globalroot-0/config
| jq -r '.layer3Sections.layer3Sections[].rules[]‘
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
設定が反映されていない場合の切り分け
◼ ある時点のファイアウォールのルールは
generation number という番号とともに管理される
16
NSX Manager
ESXi
dvfilter
vsip
vsfwd
NSX Manager から各ホストに配信されているか?
% curl -s -k -u admin:$PASS -H 'Accept: application/json'
“https://$NSXIP/api/4.0/firewall/globalroot-0/status” | jq -r .
{
"startTime": 1557974013000,
"status": "published",
"generationNumber": "1557974013000",
"generationNumberObjects": "1558005383998",
"clusterList": [
{
"clusterId": "domain-c113",
"status": "published",
"generationNumber": "1557974013000",
"generationNumberObjects": "1558005383998",
"hostStatusList": [
{
"hostId": "host-24459",
"hostName": “xxxxx",
"status": "published",
"errorCode": 0,
"startTime": 1557974017329,
"endTime": 1558006428268,
"generationNumber": "1557974013000",
"clusterId": "domain-c113",
% curl -s -k -u admin:$PASS -H 'Accept: application/json'
“https://$NSXIP/api/4.0/firewall/globalroot-0/config” | jq -r .generationNumber
1557974013000
◼ API でどのホストにどの generation number のファ
イアウォールが配信されているか分かる
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
設定が反映されていない場合の切り分け
◼ vsm.log (NSX Manager のログ)
17
NSX Manager
ESXi
dvfilter
vsip
vsfwd
NSX Manager から各ホストに配信されているか?(ログ)
# クラスタへの配信開始
ConfigurationPublisher:89 - Updating Cluster domain-c136174 with Generation Number
1558017119337
# ホストへの配信開始
ConfigurationPublisher:248 - Updating host host-160805 status for firewall, generation
1558017119337 ; StatusCode - 0, Status Message –
# ホストへの配信完了
FirewallDao:1241 - Host Status update for host host-160805 with latest generation
number 1558017119337 , end time 1558017151737, errorCode null
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
設定が反映されていない場合の切り分け
◼ ルールセットが正しく vsip まで展開されているかは
以下のコマンドで確認できる
18
NSX Manager
ESXi
dvfilter
vsip
vsfwd
ESXi 上で正しく展開されているか?
[root@host:~] vsipioctl loadruleset | grep ^Generation
Generation : 1557974013000
2019-05-16T18:22:57Z vsfwd: [INFO] Applying firewall config to vnic list on host
host-24459
2019-05-16T18:22:57Z vsfwd: [INFO] Applied RuleSet 1557974013000 on vnic
50190c49-ffcf-4e6c-fd97-3b12a0849333.001
2019-05-16T18:22:57Z vsfwd: [INFO] Applied RuleSet 1557974013000 on vnic
50190c49-ffcf-4e6c-fd97-3b12a0849333.000
2019-05-16T18:22:57Z vsfwd: [INFO] Applied RuleSet 1557974013000 for all
vnics
2019-05-16T18:22:57Z vsfwd: [INFO] Sending vsa reply of domain-c113 host
host-24459: 0
◼ ログで確認する事もできる
(ESXi) vsfwd.log
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
設定が反映されていない場合の切り分け
◼ 各 dvfilter は ID 単位で操作できる
◼ 以下のコマンドが dvfilter を識別するコマンド
19
NSX Manager
ESXi
dvfilter
vsip
vsfwd
ESXi 上で正しく展開されているか?
[root@host:~] summarize-dvfilter
…
port 84136444 vm.eth0
vNic slot 2
name: nic-102377785-eth0-vmware-sfw.2
…
[root@host:~] vsipioctl getrules -f nic-102377785-eth0-vmware-sfw.2
ruleset domain-c113 {
# Filter rules
rule 1006 at 1 in protocol tcp from addrset ip-ipset-7 to any port 10050 accept;
rule 1005 at 2 in protocol tcp from addrset ip-ipset-8 to any port 10050 accept;
rule 1001 at 3 inout protocol any from any to any accept;
}
◼ vsipioctl getrules で各 dvfilter ごとに適用されてい
るルールを確認できる
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
設定が反映されていない場合の切り分け
◼ アドレスセットがどの様になっているかは
vsipioctl getaddrsets で確認できる
20
NSX Manager
ESXi
dvfilter
vsip
vsfwd
ESXi 上で正しく展開されているか?
[root@host:~] vsipioctl getaddrsets -f nic-102377785-eth0-
vmware-sfw.2
addrset ip-ipset-7 {
ip 10.20.0.32,
◼ Source や Destination に vCenter object や Security
Group を指定した場合
VMware tools が動作していないなどの理由により IP が
展開されないことがある
対策としては
VMware tools を起動するか
Snooping 有効にするか
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
設定が反映されていない場合の切り分け
切り分け方法
◼ 入れたルールがただしいか調べる
◼ 配信されているか調べる
考えられる問題
◼ 入れたルールが正しくない
◼ vsfwd と NSX Manager が通信できない
◼ VMware tools が停止している
21
NSX Manager
ESXi
dvfilter
vsip
vsfwd
まとめ
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
大きく分けると2種類
IP Port Act
A 80 Allow
22
IP Port Act
A 80 Allow
A 443 Allow
設定が反映されていない ルールで許可しているがドロップ
SrcIP:A
80/tcp
IP Port Act
A 80 Allow
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
ルールで許可しているがドロップするケース
◼ コネクショントラッカーテーブルとルールテーブルを持っている
◼ 既存コネクション
• コネクショントラッカーテーブルで評価され一致すれば通過
◼ 新規コネクション
• ルールテーブルに一致する場合通過、コネクショントラッカーテーブル
にエントリーを追加
23
sIP sPort dIP dPort State Seq IP Port Dir State
コネクション有
TCP正常
コネクション無 Allow
Reject/Drop
コネクション有
TCP異常
ruleconntrack
dfwpktlogs.log
DFW のメカニズム概要
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
ルールで許可しているがドロップするケース
◼ Dvfilter の統計情報から確認
24
sIP sPort dIP dPort State Seq IP Port Dir State
コネクション有
TCP正常
コネクション無 Allow
Reject/Drop
コネクション有
TCP異常
ruleconntrack
dfwpktlogs.log
ファイアウォールで拒否していることを切り分ける方法
[root@host:~] vsipioctl getfilterstat -f nic-16002942-eth1-vmware-sfw.2
PACKETS IN OUT
------- -- ---
v4 pass: 83 3
v4 drop: 608 0
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
ルールで許可しているがドロップするケース
◼ DFW 前後でパケットキャプチャから差分を確認
25
sIP sPort dIP dPort State Seq IP Port Dir State
コネクション有
TCP正常
コネクション無 Allow
Reject/Drop
コネクション有
TCP異常
ruleconntrack
dfwpktlogs.log
ファイアウォールで拒否していることを切り分ける方法
# ファイアウォール直前パケットキャプチャ
pktcap-uw --capture PreDvFilter --dvfilter $DVFILTER
# ファイアウォール直後パケットキャプチャ
pktcap-uw --capture PostDvFilter --dvfilter $DVFILTER
詳細はドキュメント「DVFilter レベルでのパケットのキャプチャ」
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
ルールで許可しているがドロップするケース
◼ dfwpktlogs.log
26
sIP sPort dIP dPort State Seq IP Port Dir State
コネクション有
TCP正常
コネクション無 Allow
Reject/Drop
コネクション有
TCP異常
ruleconntrack
dfwpktlogs.log
ルールテーブルでドロップしている場合の切り分け方
INET match DROP domain-c171871/11064 IN 40 TCP 192.168.0.31/50325->192.168.0.32/80 S
ルールにマッチしドロップ
ルールID 送信元/送信先
方向 TCP フラグ
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
ルールで許可しているがドロップするケース
◼ 拒否するケースに合致しないか調査する
• 拒否するケースが記載されているKB:
PF reason codes in NSX for vSphere 6.x (2149586)
◼ 具体的に知りたい場合:
パケットキャプチャと dfwpktlogs.log の差分を調べる
27
sIP sPort dIP dPort State Seq IP Port Dir State
コネクション有
TCP正常
コネクション無 Allow
Reject/Drop
コネクション有
TCP異常
ruleconntrack
dfwpktlogs.log
コネクショントラッカーテーブルで拒否しているパケットを切り分ける方法
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
Conntrack が理由でドロップするケース
◼ DFW はウィンドウの計算もしていて、ウインドウを超えた場合はドロップする
◼ 行き/戻り で 通信元/通信先 が一致しない場合計算できず、
約 65KB を超えるとドロップしてしまう。
28
非対称ルーティング
SEND
ACK
SEND
SEND
SEND
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
Conntrack が理由でドロップするケース
◼ クライアントが異常終了した場合など、サーバーが ESTABLISHED 状
態で有るにかかわらず SYN を送ってしまうケースがある
◼ NSX6.2.3 以降だと challenge ack を返すようになり改善されている
29
EST 状態で SYN を受け取った場合(6.2.3 で改善)
SYN
SYN/ACK
ACK
EST
SYN
HA 等の理由でクライアントの
コネクションがリセット
(ハーフオープン状態)
ESTABLISHED 状態で
SYN 受信は不正と判断しドロップ
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
Conntrack が理由でドロップするケース
◼ クライアントが異常終了した場合など、サーバーが ESTABLISHED 状
態で有るにかかわらず SYN を送ってしまうケースがある
◼ NSX6.2.3 以降だと challenge ack を返すようになり改善されている
30
EST 状態で SYN を受け取った場合(6.2.3 で改善)
SYN
SYN/ACK
ACK
EST
SYN
HA 等の理由でクライアントの
コネクションがリセット
(ハーフオープン状態)
ステートクリア
ACK
RST
SYN
SYN/ACK
ACK
DFW が代理応答で ACK
SYNSENT 状態で ACK を受け取り
RST を返却、DFWのステートが
クリアされる
NSX 6.2.3 以降
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
今日の内容
IP Port Act
A 80 Allow
31
IP Port Act
A 80 Allow
A 443 Allow
設定が反映されていない ルールで許可しているがドロップ
SrcIP:A
80/tcp
IP Port Act
A 80 Allow
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
まとめ
今日の内容
◼ニフクラは大規模な環境運用のため基盤の紹介
◼NSX の DFW のトラブルシューティングの紹介
32
一緒にクラウドを作ってくれる方募集中です!
(NSX-T など検証中)
Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED
1 of 33

Recommended

DockerとPodmanの比較 by
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較Akihiro Suda
47.9K views37 slides
ぱぱっと理解するSpring Cloudの基本 by
ぱぱっと理解するSpring Cloudの基本ぱぱっと理解するSpring Cloudの基本
ぱぱっと理解するSpring Cloudの基本kazuki kumagai
19.8K views94 slides
Prometheus入門から運用まで徹底解説 by
Prometheus入門から運用まで徹底解説Prometheus入門から運用まで徹底解説
Prometheus入門から運用まで徹底解説貴仁 大和屋
34.8K views94 slides
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料) by
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)NTT DATA Technology & Innovation
2.6K views53 slides
Dockerfile を書くためのベストプラクティス解説編 by
Dockerfile を書くためのベストプラクティス解説編Dockerfile を書くためのベストプラクティス解説編
Dockerfile を書くためのベストプラクティス解説編Masahito Zembutsu
84.4K views51 slides
Dockerからcontainerdへの移行 by
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Akihiro Suda
7.5K views36 slides

More Related Content

What's hot

コンテナの作り方「Dockerは裏方で何をしているのか?」 by
コンテナの作り方「Dockerは裏方で何をしているのか?」コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」Masahito Zembutsu
30.8K views96 slides
今改めて学ぶ Microsoft Azure 基礎知識 by
今改めて学ぶ Microsoft Azure 基礎知識今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識Minoru Naito
9.7K views49 slides
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介 by
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介NTT Communications Technology Development
1.3K views53 slides
Fluentdのお勧めシステム構成パターン by
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターンKentaro Yoshida
51.1K views43 slides
Azure Monitor Logで実現するモダンな管理手法 by
Azure Monitor Logで実現するモダンな管理手法Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法Takeshi Fukuhara
3.7K views48 slides
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido... by
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...
PGOを用いたPostgreSQL on Kubernetes入門(Open Source Conference 2023 Online/Hokkaido...NTT DATA Technology & Innovation
473 views84 slides

What's hot(20)

コンテナの作り方「Dockerは裏方で何をしているのか?」 by Masahito Zembutsu
コンテナの作り方「Dockerは裏方で何をしているのか?」コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu30.8K views
今改めて学ぶ Microsoft Azure 基礎知識 by Minoru Naito
今改めて学ぶ Microsoft Azure 基礎知識今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識
Minoru Naito9.7K views
Fluentdのお勧めシステム構成パターン by Kentaro Yoshida
Fluentdのお勧めシステム構成パターンFluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida51.1K views
Azure Monitor Logで実現するモダンな管理手法 by Takeshi Fukuhara
Azure Monitor Logで実現するモダンな管理手法Azure Monitor Logで実現するモダンな管理手法
Azure Monitor Logで実現するモダンな管理手法
Takeshi Fukuhara3.7K views
Microsoft Azure Storage 概要 by Takeshi Fukuhara
Microsoft Azure Storage 概要Microsoft Azure Storage 概要
Microsoft Azure Storage 概要
Takeshi Fukuhara11.4K views
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2 by Preferred Networks
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
続・PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜 #2
Preferred Networks1.5K views
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー by Toru Makabe
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe37K views
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料) by NTT DATA Technology & Innovation
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料) by NTT DATA Technology & Innovation
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
【勉強会資料】Systems Managerによるパッチ管理 for PCI DSS by Nobuhiro Nakayama
【勉強会資料】Systems Managerによるパッチ管理 for PCI DSS【勉強会資料】Systems Managerによるパッチ管理 for PCI DSS
【勉強会資料】Systems Managerによるパッチ管理 for PCI DSS
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス by Amazon Web Services Japan
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Dockerfileを改善するためのBest Practice 2019年版 by Masahito Zembutsu
Dockerfileを改善するためのBest Practice 2019年版Dockerfileを改善するためのBest Practice 2019年版
Dockerfileを改善するためのBest Practice 2019年版
Masahito Zembutsu63.7K views
Microsoft Azure Overview - Japanses version by Takeshi Fukuhara
Microsoft Azure Overview - Japanses versionMicrosoft Azure Overview - Japanses version
Microsoft Azure Overview - Japanses version
Takeshi Fukuhara2.1K views
インフラエンジニアのためのcassandra入門 by Akihiro Kuwano
インフラエンジニアのためのcassandra入門インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Akihiro Kuwano71.1K views
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~ by Daisuke Morishita
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
エンジニアのためのOSSライセンス管理~OSS管理ツールの池の水全部抜く~
Daisuke Morishita2.3K views
Kubernetes Security with DevSecOps by Shingo Kitayama
Kubernetes Security with DevSecOpsKubernetes Security with DevSecOps
Kubernetes Security with DevSecOps
Shingo Kitayama2.6K views

Similar to vm meetup_tokyo #1 NSX の運用と DFW トラブルシューティング

Hybrid cloud fj-20190704_final by
Hybrid cloud fj-20190704_finalHybrid cloud fj-20190704_final
Hybrid cloud fj-20190704_finalKei Furusawa
3.6K views32 slides
20150715 xflow kikuta_final by
20150715 xflow kikuta_final20150715 xflow kikuta_final
20150715 xflow kikuta_finalKazumasa Ikuta
182 views38 slides
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月) by
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)VirtualTech Japan Inc.
1.8K views35 slides
Mk vpp for-containers-vppug by
Mk vpp for-containers-vppugMk vpp for-containers-vppug
Mk vpp for-containers-vppugMiya Kohno
351 views18 slides
TungstenFabricでOpenStackとk8sをラクラク管理 by
TungstenFabricでOpenStackとk8sをラクラク管理TungstenFabricでOpenStackとk8sをラクラク管理
TungstenFabricでOpenStackとk8sをラクラク管理Yuki Yamashita
3.2K views97 slides
NGINX製品の最新機能アップデート情報 by
NGINX製品の最新機能アップデート情報NGINX製品の最新機能アップデート情報
NGINX製品の最新機能アップデート情報NGINX, Inc.
262 views37 slides

Similar to vm meetup_tokyo #1 NSX の運用と DFW トラブルシューティング(20)

Hybrid cloud fj-20190704_final by Kei Furusawa
Hybrid cloud fj-20190704_finalHybrid cloud fj-20190704_final
Hybrid cloud fj-20190704_final
Kei Furusawa3.6K views
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月) by VirtualTech Japan Inc.
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)
DeNA private cloud のその後 - OpenStack最新情報セミナー(2017年3月)
Mk vpp for-containers-vppug by Miya Kohno
Mk vpp for-containers-vppugMk vpp for-containers-vppug
Mk vpp for-containers-vppug
Miya Kohno351 views
TungstenFabricでOpenStackとk8sをラクラク管理 by Yuki Yamashita
TungstenFabricでOpenStackとk8sをラクラク管理TungstenFabricでOpenStackとk8sをラクラク管理
TungstenFabricでOpenStackとk8sをラクラク管理
Yuki Yamashita3.2K views
NGINX製品の最新機能アップデート情報 by NGINX, Inc.
NGINX製品の最新機能アップデート情報NGINX製品の最新機能アップデート情報
NGINX製品の最新機能アップデート情報
NGINX, Inc.262 views
DeNA private cloudのその後 #denatechcon by DeNA
DeNA private cloudのその後 #denatechconDeNA private cloudのその後 #denatechcon
DeNA private cloudのその後 #denatechcon
DeNA1.5K views
サーバーレスで ガチ本番運用までやってるお話し by Akira Nagata
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
Akira Nagata5.1K views
Apache cloudstack4.0インストール by Yasuhiro Arai
Apache cloudstack4.0インストールApache cloudstack4.0インストール
Apache cloudstack4.0インストール
Yasuhiro Arai1.1K views
急速に進化を続けるCNIプラグイン Antrea by Motonori Shindo
急速に進化を続けるCNIプラグイン Antrea 急速に進化を続けるCNIプラグイン Antrea
急速に進化を続けるCNIプラグイン Antrea
Motonori Shindo1.7K views
OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月 by VirtualTech Japan Inc.
OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月
OpenStackを利用したNFVの商用化 - OpenStack最新情報セミナー 2017年7月
KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成 by Takashi Kanai
KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成
KubernetesとFlannelでWindows上にPod間VXLAN Overlayネットワークを構成
Takashi Kanai4.1K views
巨大ポータルを支えるプライベート・クラウド構築事例から学べ!~攻める情シスのためのインフラ構築、その極意とは?~ by Brocade
巨大ポータルを支えるプライベート・クラウド構築事例から学べ!~攻める情シスのためのインフラ構築、その極意とは?~巨大ポータルを支えるプライベート・クラウド構築事例から学べ!~攻める情シスのためのインフラ構築、その極意とは?~
巨大ポータルを支えるプライベート・クラウド構築事例から学べ!~攻める情シスのためのインフラ構築、その極意とは?~
Brocade2.5K views
NGINX東京ハッピーアワー「DevOpsプラクティスによるクラウドでのKubernetesの利用」 by Takaaki Suzuki
NGINX東京ハッピーアワー「DevOpsプラクティスによるクラウドでのKubernetesの利用」NGINX東京ハッピーアワー「DevOpsプラクティスによるクラウドでのKubernetesの利用」
NGINX東京ハッピーアワー「DevOpsプラクティスによるクラウドでのKubernetesの利用」
Takaaki Suzuki317 views

More from 富士通クラウドテクノロジーズ株式会社

弊社サービスを使って ノーコード開発してみた.pdf by
弊社サービスを使って ノーコード開発してみた.pdf弊社サービスを使って ノーコード開発してみた.pdf
弊社サービスを使って ノーコード開発してみた.pdf富士通クラウドテクノロジーズ株式会社
247 views15 slides
非エンジニアがクラウド上にMinecraftサーバーを構築するまでの記録 by
非エンジニアがクラウド上にMinecraftサーバーを構築するまでの記録非エンジニアがクラウド上にMinecraftサーバーを構築するまでの記録
非エンジニアがクラウド上にMinecraftサーバーを構築するまでの記録富士通クラウドテクノロジーズ株式会社
613 views22 slides
FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ) by
FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)
FJcloud-Vの無料トライアルで雑にWordPressを入れてみた(リベンジ)富士通クラウドテクノロジーズ株式会社
1.9K views64 slides

More from 富士通クラウドテクノロジーズ株式会社(20)

Recently uploaded

SSH超入門 by
SSH超入門SSH超入門
SSH超入門Toru Miyahara
405 views21 slides
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私 by
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私修治 松浦
195 views36 slides
how query cost affects search behavior translated in JP by
how query cost affects search behavior translated in JPhow query cost affects search behavior translated in JP
how query cost affects search behavior translated in JPTobioka Ken
10 views16 slides
Najah Matsuo Self Introduction by
Najah Matsuo Self IntroductionNajah Matsuo Self Introduction
Najah Matsuo Self IntroductionNajahMatsuo
10 views29 slides
onewedge_companyguide1 by
onewedge_companyguide1onewedge_companyguide1
onewedge_companyguide1ONEWEDGE1
32 views22 slides
システム概要.pdf by
システム概要.pdfシステム概要.pdf
システム概要.pdfTaira Shimizu
44 views1 slide

Recently uploaded(7)

JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私 by 修治 松浦
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私
JISTA月例会2023年12月 書籍『3カ月で改善!システム障害対応実践ガイド』ご紹介+失敗学と障害対応と私
修治 松浦195 views
how query cost affects search behavior translated in JP by Tobioka Ken
how query cost affects search behavior translated in JPhow query cost affects search behavior translated in JP
how query cost affects search behavior translated in JP
Tobioka Ken10 views
Najah Matsuo Self Introduction by NajahMatsuo
Najah Matsuo Self IntroductionNajah Matsuo Self Introduction
Najah Matsuo Self Introduction
NajahMatsuo10 views
onewedge_companyguide1 by ONEWEDGE1
onewedge_companyguide1onewedge_companyguide1
onewedge_companyguide1
ONEWEDGE132 views

vm meetup_tokyo #1 NSX の運用と DFW トラブルシューティング

  • 1. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED VM Meetup Tokyo #1 NSX の運用 DFWトラブルシューティング
  • 2. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 自己紹介 2 樋口 茂幸 所属: 富士通クラウドテクノロジーズ株式会社 Model: 2012年度入社モデル エンジニア Uptime: 社会人7年目 State: Connected Twitter: @YOMOGItanpop(つぶやいていない) 興味分野:
  • 3. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 3 ニフクラと NSX
  • 4. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED ◼ 2010年よりクラウド事業を開始 ニフティ株式会社時代のISP事業やWebサービス事業で培ったノウハウとインフラ資産を活用 ◼ 2017年4月社名変更 ニフティ株式会社から富士通クラウドテクノロジーズに ◼ 2017年11月ブランド変更、ニフティクラウドからニフクラに 4 1980年~ パソコン通信/ISP通信/WEBサービス事業 2010年~ クラウド事業 ノウハウとインフラ資産の活用 2017年 VMware APJ最大規模! ニフクラってなに? ML/mBaaS/PaaS も 2006年から、ずっと VMware
  • 5. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED どこで NSX を使っているのか? 5 バックアップ/DRサービス for VMware vSphere® デスクトップサービス (専有型) ニフクラ IaaS
  • 6. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED どこで NSX を使っているのか? 6 バックアップ/DRサービス for VMware vSphere® デスクトップサービス (専有型) ニフクラ IaaS ※一部 を利用
  • 7. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED NSX 利用で特に変わっているところは? 7 ニフクラ IaaS リモートアクセスVPNゲートウェイ 2019年4月リリース new 活性移行 以前の製品 ファイアウォールマイグレーション 数10データセンターに展開、1データーセンター内でも世界最大規模の利用
  • 8. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 運用のチーム体制はどうなっているのか? 8 vCenter/ESXi 担当者 物理機器 担当者 ニフクラ アプリケーション担当者 顧客サポート 担当者 NSX 担当者 vib 企画 設計 運用開発
  • 9. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 運用ツールはどうなっているのか 9 API監視 アプリケーション (自作:nsxraml 利用) ファイアウォール ログパース アプリケーション (自作) ESXiNSX Manager ユーザー 構成管理 運用者
  • 10. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 運用ツール開発はどうなっているのか コミット テスト 環境作成 テスト リリース NS X VM VM nested ESXi nested ESXi nested ESXi vC VM VM テスト環境 VMware vSphere® nested の環境をクローン NS X VM VM nested ESXi nested ESXi nested ESXi vC VM VM テスト環境 VMware vSphere® ESXi ESXi テスト 環境 テスト 環境 テスト 環境 new VM 変更したコードを実行し vSphere を含む全体の挙動をテスト 10 CI 利用
  • 11. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 11 DFWのトラブルシューティング
  • 12. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 大きく分けると2種類 IP Port Act A 80 Allow 12 IP Port Act A 80 Allow A 443 Allow 設定が反映されていない ルールで許可しているがドロップ SrcIP:A 80/tcp IP Port Act A 80 Allow 参考: vForum 2016 資料 「マイクロセグメンテーション運用のためのNSX for vSphere -Distributed Firewall トラブルシューティング」
  • 13. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 大きく分けると2種類 IP Port Act A 80 Allow 13 IP Port Act A 80 Allow A 443 Allow 設定が反映されていない ルールで許可しているがドロップ SrcIP:A 80/tcp IP Port Act A 80 Allow
  • 14. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 設定が反映されていない場合の切り分け ◼ 設定したファイアウォールルールの設定は左のような 流れになっている 14 NSX Manager ESXi dvfilter vsip vsfwd 全体像
  • 15. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 設定が反映されていない場合の切り分け ◼ まずは意図したとおりのルールがNSXに入っているか確認 する ◼ UI や API で確認できる 15 NSX Manager ESXi dvfilter vsip vsfwd 全体像 % curl -s -k -u admin:$PASS -H 'Accept: application/json‘ https://$NSXIP/api/4.0/firewall/globalroot-0/config | jq -r '.layer3Sections.layer3Sections[].rules[]‘
  • 16. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 設定が反映されていない場合の切り分け ◼ ある時点のファイアウォールのルールは generation number という番号とともに管理される 16 NSX Manager ESXi dvfilter vsip vsfwd NSX Manager から各ホストに配信されているか? % curl -s -k -u admin:$PASS -H 'Accept: application/json' “https://$NSXIP/api/4.0/firewall/globalroot-0/status” | jq -r . { "startTime": 1557974013000, "status": "published", "generationNumber": "1557974013000", "generationNumberObjects": "1558005383998", "clusterList": [ { "clusterId": "domain-c113", "status": "published", "generationNumber": "1557974013000", "generationNumberObjects": "1558005383998", "hostStatusList": [ { "hostId": "host-24459", "hostName": “xxxxx", "status": "published", "errorCode": 0, "startTime": 1557974017329, "endTime": 1558006428268, "generationNumber": "1557974013000", "clusterId": "domain-c113", % curl -s -k -u admin:$PASS -H 'Accept: application/json' “https://$NSXIP/api/4.0/firewall/globalroot-0/config” | jq -r .generationNumber 1557974013000 ◼ API でどのホストにどの generation number のファ イアウォールが配信されているか分かる
  • 17. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 設定が反映されていない場合の切り分け ◼ vsm.log (NSX Manager のログ) 17 NSX Manager ESXi dvfilter vsip vsfwd NSX Manager から各ホストに配信されているか?(ログ) # クラスタへの配信開始 ConfigurationPublisher:89 - Updating Cluster domain-c136174 with Generation Number 1558017119337 # ホストへの配信開始 ConfigurationPublisher:248 - Updating host host-160805 status for firewall, generation 1558017119337 ; StatusCode - 0, Status Message – # ホストへの配信完了 FirewallDao:1241 - Host Status update for host host-160805 with latest generation number 1558017119337 , end time 1558017151737, errorCode null
  • 18. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 設定が反映されていない場合の切り分け ◼ ルールセットが正しく vsip まで展開されているかは 以下のコマンドで確認できる 18 NSX Manager ESXi dvfilter vsip vsfwd ESXi 上で正しく展開されているか? [root@host:~] vsipioctl loadruleset | grep ^Generation Generation : 1557974013000 2019-05-16T18:22:57Z vsfwd: [INFO] Applying firewall config to vnic list on host host-24459 2019-05-16T18:22:57Z vsfwd: [INFO] Applied RuleSet 1557974013000 on vnic 50190c49-ffcf-4e6c-fd97-3b12a0849333.001 2019-05-16T18:22:57Z vsfwd: [INFO] Applied RuleSet 1557974013000 on vnic 50190c49-ffcf-4e6c-fd97-3b12a0849333.000 2019-05-16T18:22:57Z vsfwd: [INFO] Applied RuleSet 1557974013000 for all vnics 2019-05-16T18:22:57Z vsfwd: [INFO] Sending vsa reply of domain-c113 host host-24459: 0 ◼ ログで確認する事もできる (ESXi) vsfwd.log
  • 19. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 設定が反映されていない場合の切り分け ◼ 各 dvfilter は ID 単位で操作できる ◼ 以下のコマンドが dvfilter を識別するコマンド 19 NSX Manager ESXi dvfilter vsip vsfwd ESXi 上で正しく展開されているか? [root@host:~] summarize-dvfilter … port 84136444 vm.eth0 vNic slot 2 name: nic-102377785-eth0-vmware-sfw.2 … [root@host:~] vsipioctl getrules -f nic-102377785-eth0-vmware-sfw.2 ruleset domain-c113 { # Filter rules rule 1006 at 1 in protocol tcp from addrset ip-ipset-7 to any port 10050 accept; rule 1005 at 2 in protocol tcp from addrset ip-ipset-8 to any port 10050 accept; rule 1001 at 3 inout protocol any from any to any accept; } ◼ vsipioctl getrules で各 dvfilter ごとに適用されてい るルールを確認できる
  • 20. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 設定が反映されていない場合の切り分け ◼ アドレスセットがどの様になっているかは vsipioctl getaddrsets で確認できる 20 NSX Manager ESXi dvfilter vsip vsfwd ESXi 上で正しく展開されているか? [root@host:~] vsipioctl getaddrsets -f nic-102377785-eth0- vmware-sfw.2 addrset ip-ipset-7 { ip 10.20.0.32, ◼ Source や Destination に vCenter object や Security Group を指定した場合 VMware tools が動作していないなどの理由により IP が 展開されないことがある 対策としては VMware tools を起動するか Snooping 有効にするか
  • 21. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 設定が反映されていない場合の切り分け 切り分け方法 ◼ 入れたルールがただしいか調べる ◼ 配信されているか調べる 考えられる問題 ◼ 入れたルールが正しくない ◼ vsfwd と NSX Manager が通信できない ◼ VMware tools が停止している 21 NSX Manager ESXi dvfilter vsip vsfwd まとめ
  • 22. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 大きく分けると2種類 IP Port Act A 80 Allow 22 IP Port Act A 80 Allow A 443 Allow 設定が反映されていない ルールで許可しているがドロップ SrcIP:A 80/tcp IP Port Act A 80 Allow
  • 23. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED ルールで許可しているがドロップするケース ◼ コネクショントラッカーテーブルとルールテーブルを持っている ◼ 既存コネクション • コネクショントラッカーテーブルで評価され一致すれば通過 ◼ 新規コネクション • ルールテーブルに一致する場合通過、コネクショントラッカーテーブル にエントリーを追加 23 sIP sPort dIP dPort State Seq IP Port Dir State コネクション有 TCP正常 コネクション無 Allow Reject/Drop コネクション有 TCP異常 ruleconntrack dfwpktlogs.log DFW のメカニズム概要
  • 24. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED ルールで許可しているがドロップするケース ◼ Dvfilter の統計情報から確認 24 sIP sPort dIP dPort State Seq IP Port Dir State コネクション有 TCP正常 コネクション無 Allow Reject/Drop コネクション有 TCP異常 ruleconntrack dfwpktlogs.log ファイアウォールで拒否していることを切り分ける方法 [root@host:~] vsipioctl getfilterstat -f nic-16002942-eth1-vmware-sfw.2 PACKETS IN OUT ------- -- --- v4 pass: 83 3 v4 drop: 608 0
  • 25. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED ルールで許可しているがドロップするケース ◼ DFW 前後でパケットキャプチャから差分を確認 25 sIP sPort dIP dPort State Seq IP Port Dir State コネクション有 TCP正常 コネクション無 Allow Reject/Drop コネクション有 TCP異常 ruleconntrack dfwpktlogs.log ファイアウォールで拒否していることを切り分ける方法 # ファイアウォール直前パケットキャプチャ pktcap-uw --capture PreDvFilter --dvfilter $DVFILTER # ファイアウォール直後パケットキャプチャ pktcap-uw --capture PostDvFilter --dvfilter $DVFILTER 詳細はドキュメント「DVFilter レベルでのパケットのキャプチャ」
  • 26. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED ルールで許可しているがドロップするケース ◼ dfwpktlogs.log 26 sIP sPort dIP dPort State Seq IP Port Dir State コネクション有 TCP正常 コネクション無 Allow Reject/Drop コネクション有 TCP異常 ruleconntrack dfwpktlogs.log ルールテーブルでドロップしている場合の切り分け方 INET match DROP domain-c171871/11064 IN 40 TCP 192.168.0.31/50325->192.168.0.32/80 S ルールにマッチしドロップ ルールID 送信元/送信先 方向 TCP フラグ
  • 27. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED ルールで許可しているがドロップするケース ◼ 拒否するケースに合致しないか調査する • 拒否するケースが記載されているKB: PF reason codes in NSX for vSphere 6.x (2149586) ◼ 具体的に知りたい場合: パケットキャプチャと dfwpktlogs.log の差分を調べる 27 sIP sPort dIP dPort State Seq IP Port Dir State コネクション有 TCP正常 コネクション無 Allow Reject/Drop コネクション有 TCP異常 ruleconntrack dfwpktlogs.log コネクショントラッカーテーブルで拒否しているパケットを切り分ける方法
  • 28. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED Conntrack が理由でドロップするケース ◼ DFW はウィンドウの計算もしていて、ウインドウを超えた場合はドロップする ◼ 行き/戻り で 通信元/通信先 が一致しない場合計算できず、 約 65KB を超えるとドロップしてしまう。 28 非対称ルーティング SEND ACK SEND SEND SEND
  • 29. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED Conntrack が理由でドロップするケース ◼ クライアントが異常終了した場合など、サーバーが ESTABLISHED 状 態で有るにかかわらず SYN を送ってしまうケースがある ◼ NSX6.2.3 以降だと challenge ack を返すようになり改善されている 29 EST 状態で SYN を受け取った場合(6.2.3 で改善) SYN SYN/ACK ACK EST SYN HA 等の理由でクライアントの コネクションがリセット (ハーフオープン状態) ESTABLISHED 状態で SYN 受信は不正と判断しドロップ
  • 30. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED Conntrack が理由でドロップするケース ◼ クライアントが異常終了した場合など、サーバーが ESTABLISHED 状 態で有るにかかわらず SYN を送ってしまうケースがある ◼ NSX6.2.3 以降だと challenge ack を返すようになり改善されている 30 EST 状態で SYN を受け取った場合(6.2.3 で改善) SYN SYN/ACK ACK EST SYN HA 等の理由でクライアントの コネクションがリセット (ハーフオープン状態) ステートクリア ACK RST SYN SYN/ACK ACK DFW が代理応答で ACK SYNSENT 状態で ACK を受け取り RST を返却、DFWのステートが クリアされる NSX 6.2.3 以降
  • 31. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED 今日の内容 IP Port Act A 80 Allow 31 IP Port Act A 80 Allow A 443 Allow 設定が反映されていない ルールで許可しているがドロップ SrcIP:A 80/tcp IP Port Act A 80 Allow
  • 32. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED まとめ 今日の内容 ◼ニフクラは大規模な環境運用のため基盤の紹介 ◼NSX の DFW のトラブルシューティングの紹介 32 一緒にクラウドを作ってくれる方募集中です! (NSX-T など検証中)
  • 33. Copyright 2019 FUJITSU CLOUD TECHNOLOGIES LIMITED