SlideShare una empresa de Scribd logo
1 de 59
Azure Network Watcher の
あれやこれや
シグマコンサルティング株式会社
冨田 順 (とみたすなお)
@harutama
http://azure.moe
2
今日の内容
• Azure Network Watcher で何ができるの
か、概要を紹介する。
• Azure のネットワークを設計するに当
たっての注意点を紹介する。
3
4
本セッションの内容は 2017年6月23日 時点での情報に
基づいて作成されています。
2017年3月31日
5
できること
• クラウド上で作成した仮想ネットワーク
でのパケットの流れを追いかける。
– IPフローの確認
– 次ホップ
– セキュリティグループビュー
– パケットキャプチャ
6
Network Watcher の有効化
7
「ネットワーキング」カテゴリの中
8
リージョンに対して有効化
9
今回の環境
10
lucky
192.168.30.4
prairie
192.168.10.4
beaver
192.168.20.4
サブネット
riku 192.168.10.0/24
サブネット
kawa 192.168.20.0/24
サブネット
boss 192.168.30.0/24
仮想ネットワーク JapariPark 192.168.0.0/16
普通のLinux
クライアント
普通のWindows
クライアント
ルーターとして
構成したLinux
おさらい その1
11
おさらい その1
12
ネットワークセキュリティグループ
(NSG)
何をするもの?
• 要するにファイアーウォールの設定
– IPアドレス(CIDR形式)とポートの組み合わせ
に対して、通信の許可・不許可を設定。
13
NICとサブネットに設定します
14
仮想マシン
ネットワーク
インターフェイス
(NIC)
サブネット
インターネット
例えばこんな構成
15https://docs.microsoft.com/ja-jp/azure/virtual-network/virtual-networks-nsg
参考
16
ネットワーク セキュリティ グループによるネットワーク トラフィックのフィル
タリング
https://docs.microsoft.com/ja-jp/azure/virtual-network/virtual-networks-
nsg
仮想マシンとネットワークリソースの関係を知る
http://www.atmarkit.co.jp/ait/articles/1705/25/news036_2.html
IPフローの確認 と
セキュリティグループビュー
17
何をするものか?
18
IP フロー検証機能を使用すると、仮想マシンから送受信され
るパケットの許可または拒否の状況を 5 タプルの情報に基づ
いて検証できます。
パケットがセキュリティ グループにより拒否された場合、そ
のパケットを拒否した規則の名前が返されます。
管理者は、任意の送信元または送信先の IP を選択でき、IP
フロー検証機能を使用してインターネットまたはオンプレミ
ス環境との接続の問題をすばやく診断できます。
https://docs.microsoft.com/ja-jp/azure/network-watcher/network-watcher-ip-flow-verify-overview
デフォルトのNSG
19
SSHの通信は許可されてますが
20
HTTPは閉じられています
21
セキュリティグループビュー
22
セキュリティグループビュー
• 仮想マシンに割り当てられているNSGの
状態を一覧で見ることができます。
– サブネットの NSG
– ネットワークインターフェースの NSG
23
おさらい その2
24
おさらい その2
25
ルートテーブル
何をするもの?
• ネットワークのルーティングを自分で設
定する。
– いわゆる「User Defined Routing (UDR)」
– 既定のネットワークルーティングは Azure 側
で自動的に構成されている。
26
いつ使うのか? その1
27
ExpressRoute
Azure上の仮想マシン オンプレミス
VPN
インターネット
オンプレミスネットワークからインターネットにアクセスさせたい
いつ使うのか? その2
28
Azure上の仮想マシン 仮想アプライアンス
インターネット
仮想アプライアンス経由でインターネットにアクセスさせたい
参考
29
ユーザー定義のルートと IP 転送
https://docs.microsoft.com/ja-jp/azure/virtual-network/virtual-networks-
udr-overview
Azure ARMでNATインスタンスを構成
https://www.cns.co.jp/cri/azure/azure%E3%81%A7%E9%AB%98%E5%8
F%AF%E7%94%A8%E6%80%A7nat%E3%82%A4%E3%83%B3%E3%82
%B9%E3%82%BF%E3%83%B3%E3%82%B9%E3%82%92%E6%A7%8B
%E6%88%90-%E3%81%9D%E3%81%AE1/
Azure Resource Manager デプロイ モデルを使用した強制トンネリングの構成
https://docs.microsoft.com/ja-jp/azure/vpn-gateway/vpn-gateway-forced-
tunneling-rm
次ホップ
30
何をするものか?
31
VM からのトラフィックは、NIC に関連付けられた有効な
ルートをもとに、送信先に送信されます。
次ホップは、特定の仮想マシンと NIC から次ホップの種類と
パケットの IP アドレスを取得します。
これにより、パケットが送信先に向かっているのか、または
トラフィックが失われているのかを判断するのに役立ちます。
https://docs.microsoft.com/ja-jp/azure/network-watcher/network-watcher-next-hop-overview
ルートテーブルの設定
32
サブネットkawa
に対して
全ての通信(0.0.0.0/0)を
lucky(192.168.30.4)に
ルーティングさせる
設定された挙動
33
lucky
192.168.30.4
prairie
192.168.10.4
beaver
192.168.20.4
サブネット
riku 192.168.10.0/24
サブネット
kawa 192.168.20.0/24
サブネット
boss 192.168.30.0/24
仮想ネットワーク JapariPark 192.168.0.0/16
インターネット
通常のVM
34
ルーティングが設定されたVM
35
パケットキャプチャー
36
何をするものか?
37
Network Watcher の可変パケット キャプ
チャを使用すると、仮想マシンとの間で送受
信されるトラフィックを追跡するパケット
キャプチャ セッションを作成できます。
パケット キャプチャは、事後と事前に、ネッ
トワークの異常を診断するのに役立ちます。
https://docs.microsoft.com/ja-jp/azure/network-watcher/network-watcher-packet-capture-overview
パケットキャプチャーの設定
38
パケットキャプチャーの前に
• 対象の仮想マシンに対して
「Network Watcher VM エージェント」
がインストールされている必要があります。
– エージェントは Windows と Linux 向けが用意
されています。
39
仮想マシンの拡張機能
40
注意
• 今のところ、ポータルから
「Network Watcher VM エージェント」
を追加すると、高確率で失敗します。
• PowerShell などから追加しないと、ちゃ
んと入ってくれない感じです。
– https://www.powershellgallery.com/pack
ages/AzureRM
41
PowerShell でのデプロイ
42
Set-AzureRmVMExtension -ResourceGroupName "myResourceGroup1" `
-Location "WestUS" `
-VMName "myVM1" `
-Name "networkWatcherAgent" `
-Publisher "Microsoft.Azure.NetworkWatcher" `
-Type "NetworkWatcherAgentWindows" `
-TypeHandlerVersion "1.4"
https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/extensions-nwa
Windows と Linux を自動判定
43
# 拡張機能を入れる対象のVM情報
$VMResourceGroup = '2017Interact';
$VMName = 'beaver';
# 拡張機能を入れる対象のVM情報をとってくる
$VM = Get-AzureRmVM -ResourceGroupName $VMResourceGroup -Name $VMName;
# 機能拡張の情報をとってくる
$ExtensionPublisher = Get-AzureRmVmImagePublisher -Location $vm.Location | Where-Object { $_.PublisherName -eq
'Microsoft.Azure.NetworkWatcher' };
# VMは Linux? Windows?
if($VM.OSProfile.WindowsConfiguration -ne $NULL){
$ExtensionType = 'NetworkWatcherAgentWindows';
}elseif($VM.OSProfile.LinuxConfiguration -ne $NULL){
$ExtensionType = 'NetworkWatcherAgentLinux';
}
$ExtensionImageType = Get-AzureRmVMExtensionImageType -Location $VM.Location -PublisherName
$ExtensionPublisher.PublisherName | Where-Object { $_.Type -eq $ExtensionType };
$ExtensionImage = Get-AzureRmVMExtensionImage -Location $VM.Location -PublisherName $ExtensionPublisher.PublisherName
-Type $ExtensionType;
# VMに機能拡張を適用
Set-AzureRmVMExtension -ResourceGroupName $VM.ResourceGroupName -Location $VM.Location -VMName $VM.Name -Publisher
$ExtensionImage.PublisherName -ExtensionType $ExtensionImage.Type -Name 'AzureNetworkWatcherExtension' -
TypeHandlerVersion '1.4';
結果は .cap ファイルで保存
44
Wireshark などで見えます
45
ネットワークの設計にあたって
46
止めてはいけない通信
• インフラストラクチャとの通信
– 168.63.129.16
• メタデータサービスと通信
– 169.254.169.254
• ストレージアカウントとの通信
– blob.*.store.core.windows.net
• Windowsライセンス認証サーバーとの通信
– kms.core.windows.net
47
参考 止めてはいけない通信
48
Azure 仮想マシンで送受信するネットワークパケットをキャプチャする
https://blogs.msdn.microsoft.com/ainaba-csa/2017/03/06/capture-
network-packet-from-to-azure-virtual-machine/
ExpressRoute の FAQ
https://docs.microsoft.com/ja-jp/azure/expressroute/expressroute-faqs
NSG による プローブの制限を確認
http://blogs.gine2.jp/kusa/archives/2591
NSG の罠
49
既定の規則の中にある
ソース「AzureLoadBalancer」とは
どこを指しているのでしょう?
「AzureLoadBalancer」の意味
50
×
Azure Load Balancer (L4 のロードバランサー) で
ロードバランスされて来るトラフィック
◯
Azure Load Balancer が正常姓プローブ
(サービスに対してハートビートを確認するための通信)
を行う際の送信元
ドキュメント上の記述
51
参考 NSG の罠
52
ネットワーク セキュリティ グループによるネットワーク トラフィックのフィル
タリング
https://docs.microsoft.com/ja-jp/azure/virtual-network/virtual-networks-
nsg
Azureの受信セキュリティ規則(タグ)でハマった話
http://qiita.com/shota_umeda/items/86b600f714021c31172a
Windowsファイアーウォールの罠
53
Windowsファイアーウォールの罠
54
• Windowsファイアーウォール
などで設定をミスして RDP
接続ができなくなると、大変な
ことになります。
個人的なオススメ
• Windows ファイアーウォールで細かい設定
をしないようにしましょう。
– ファイアーウォールは NSG に任せましょう。
管理性も良くなります。
– 「Windows ファイアーウォールを無効にしろ」
とは言ってませんし思ってません。
55
参考 Windows ファイアーウォールの罠
56
Azure 仮想マシンへのリモート デスクトップ接続に関するトラブルシューティン
グ
https://docs.microsoft.com/ja-jp/azure/virtual-
machines/windows/troubleshoot-rdp-connection
「Azure仮想マシンにログオンできない!」という悲劇からの生還
https://blogs.technet.microsoft.com/ksasaki/2014/03/21/azure1/
ネットワーク設計
57
参考 ネットワーク設計
58
Azure Virtual Data Centerで学ぶ 企業向けAzureネットワーク設計
https://www.slideshare.net/ToruMakabe/azure-virtual-data-center-azure
Microsoft Azure Virtual Data Center
https://docs.microsoft.com/en-us/azure/networking/networking-virtual-
datacenter
Let’s dream and then let’s build.
- Ray Ozzie
冨田 順 (@harutama)
http://twitter.com/harutama
59

Más contenido relacionado

Más de Sunao Tomita

Logic Apps と Api Apps の話
Logic Apps と Api Apps の話Logic Apps と Api Apps の話
Logic Apps と Api Apps の話Sunao Tomita
 
Caching ガイダンスの話
Caching ガイダンスの話Caching ガイダンスの話
Caching ガイダンスの話Sunao Tomita
 
20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要Sunao Tomita
 
Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森Sunao Tomita
 
デザインパターンから見た AWS と Azure
デザインパターンから見た AWS と Azureデザインパターンから見た AWS と Azure
デザインパターンから見た AWS と AzureSunao Tomita
 
Build 2014 Azure 的まとめ
Build 2014 Azure 的まとめBuild 2014 Azure 的まとめ
Build 2014 Azure 的まとめSunao Tomita
 
Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版Sunao Tomita
 
Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?Sunao Tomita
 
最近の Windows Azure ってどう?
最近の Windows Azure ってどう?最近の Windows Azure ってどう?
最近の Windows Azure ってどう?Sunao Tomita
 
2013年版の inside windows azure
2013年版の inside windows azure2013年版の inside windows azure
2013年版の inside windows azureSunao Tomita
 
Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版Sunao Tomita
 
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~Sunao Tomita
 
TypeScriptへの入口
TypeScriptへの入口TypeScriptへの入口
TypeScriptへの入口Sunao Tomita
 
build 2012 Windows Azure 的まとめ
build 2012 Windows Azure 的まとめbuild 2012 Windows Azure 的まとめ
build 2012 Windows Azure 的まとめSunao Tomita
 
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみたAwsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみたSunao Tomita
 
Windows Azure で 2/29 に起こった問題のまとめ
Windows Azure で 2/29 に起こった問題のまとめWindows Azure で 2/29 に起こった問題のまとめ
Windows Azure で 2/29 に起こった問題のまとめSunao Tomita
 
第1回JAZUG静岡勉強会
第1回JAZUG静岡勉強会第1回JAZUG静岡勉強会
第1回JAZUG静岡勉強会Sunao Tomita
 
デブサミ2012_震災とHackとクラウドと
デブサミ2012_震災とHackとクラウドとデブサミ2012_震災とHackとクラウドと
デブサミ2012_震災とHackとクラウドとSunao Tomita
 
20120201 windowsazureの歴史
20120201 windowsazureの歴史20120201 windowsazureの歴史
20120201 windowsazureの歴史Sunao Tomita
 
Build Windows ラップアップ
Build Windows ラップアップBuild Windows ラップアップ
Build Windows ラップアップSunao Tomita
 

Más de Sunao Tomita (20)

Logic Apps と Api Apps の話
Logic Apps と Api Apps の話Logic Apps と Api Apps の話
Logic Apps と Api Apps の話
 
Caching ガイダンスの話
Caching ガイダンスの話Caching ガイダンスの話
Caching ガイダンスの話
 
20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要20141004 青森ハンズオン Azure概要
20141004 青森ハンズオン Azure概要
 
Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森Mashup Ideathon 東北 in 青森
Mashup Ideathon 東北 in 青森
 
デザインパターンから見た AWS と Azure
デザインパターンから見た AWS と Azureデザインパターンから見た AWS と Azure
デザインパターンから見た AWS と Azure
 
Build 2014 Azure 的まとめ
Build 2014 Azure 的まとめBuild 2014 Azure 的まとめ
Build 2014 Azure 的まとめ
 
Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版Windows Azure の歴史2014年2月26日版
Windows Azure の歴史2014年2月26日版
 
Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?Windows Azure の中でも動いている InfiniBand って何?
Windows Azure の中でも動いている InfiniBand って何?
 
最近の Windows Azure ってどう?
最近の Windows Azure ってどう?最近の Windows Azure ってどう?
最近の Windows Azure ってどう?
 
2013年版の inside windows azure
2013年版の inside windows azure2013年版の inside windows azure
2013年版の inside windows azure
 
Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版Windows Azureの歴史 2013年2月版
Windows Azureの歴史 2013年2月版
 
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
 
TypeScriptへの入口
TypeScriptへの入口TypeScriptへの入口
TypeScriptへの入口
 
build 2012 Windows Azure 的まとめ
build 2012 Windows Azure 的まとめbuild 2012 Windows Azure 的まとめ
build 2012 Windows Azure 的まとめ
 
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみたAwsのクラウドデザインパターンをwindows azureに持ってきてみた
Awsのクラウドデザインパターンをwindows azureに持ってきてみた
 
Windows Azure で 2/29 に起こった問題のまとめ
Windows Azure で 2/29 に起こった問題のまとめWindows Azure で 2/29 に起こった問題のまとめ
Windows Azure で 2/29 に起こった問題のまとめ
 
第1回JAZUG静岡勉強会
第1回JAZUG静岡勉強会第1回JAZUG静岡勉強会
第1回JAZUG静岡勉強会
 
デブサミ2012_震災とHackとクラウドと
デブサミ2012_震災とHackとクラウドとデブサミ2012_震災とHackとクラウドと
デブサミ2012_震災とHackとクラウドと
 
20120201 windowsazureの歴史
20120201 windowsazureの歴史20120201 windowsazureの歴史
20120201 windowsazureの歴史
 
Build Windows ラップアップ
Build Windows ラップアップBuild Windows ラップアップ
Build Windows ラップアップ
 

Azure Network Watcher のあれやこれや