ポートミラーリング + Wiresharkで家の通信見てみた
この記事は「レバテック開発部 Advent Calendar 2024」の 16 日目の記事です!
昨日の記事は、kima さんが担当していました!
はじめに
家のネットワーク通信が見たいなーの気持ちが抑えられなくなりました。
そこで、どうにかして見れないかを試してみた記事です。
対象読者
- ネットワーク興味がある方
- オンライン対応のゲーム機やAmazon Echoなどの機器の通信を見たい人
- (実際の通信データは暗号化されていて見えません)
どんな感じ?
ゲーム機のIPアドレス
Wiresharkで通信が見えている
誰と通信してるのか認識できていい感じです!!!
自分はこんな通信してたんだを知ることができてテンション上がりました!!
馴染みのある通信方法でなんだか安心しました!!!
準備するもの
- ポートミラーリングができるルータ
- 無線LANルータ
- ルータ設定用のPC
- 通信確認用PC
- ルータ設定用のPCと同じでも大丈夫です。
- (任意)通信確認用PCにLANポートがない場合はLANポート付きのNIC
- 筆者はUBSタイプのNICを購入しました。
環境
使用した機器類
以下の固有名詞で説明します。
- ポートミラーリングができるルータ: RTX1210
- 工場出荷状態でした。
- 筆者はヤフオクで購入しました。
- 無線LANルータ: I-O DATA WN-DX1200GR
- ルータ設定用PC: Macbook Pro
- 通信確認用PC: Macbook Pro
筆者のプロバイダ契約
- V6プラス(IPoE方式)
最終的なネットワーク構成
ネットワーク構成
RTX1210の各LANの使用用途
- LAN1: 家とネットワーク機器と接続
- LAN2: インターネットと接続
- LAN3: 未使用
注意事項
RTX1210の導入
RTX1210にアクセス
まずは、MacとRTX1210のLAN1の任意のポートをLANケーブルで接続します。
次に、MacのターミナルでRTX1210に接続します。
(Mac) $ telnet 192.168.100.1
※デフォルトだとRTX1210のIPアドレスは192.168.100.1
に設定されています。
※パスワードを聞かれますが、デフォルトでは設定されていないので、「Enter」で通ります。
RTX1210の初期状態の確認
RTX1210にアクセス後show config
で設定を確認できます。
(RTX1210) > show config
# RTX1210 Rev.14.01.05 (Thu Nov 6 08:45:55 2014)
# MAC Address : ********
# Memory 256Mbytes, 3LAN, 1BRI
# main: RTX1210 ver=00 serial=****** MAC-Address=*****
ess=***** MAC-Address=*****
# Reporting Date: Nov 3 16:04:53 2024
ip lan1 address 192.168.100.1/24
switch control use lan1 on terminal=on
switch control use lan2 on terminal=on
switch control use lan3 on terminal=on
ip filter 500000 restrict * * * * *
dhcp service server
dhcp server rfc2131 compliant except remain-silent
dhcp scope 1 192.168.100.2-192.168.100.191/24
dns host lan1
dns private address spoof on
schedule at 1 */Wed 00:00:00 * ntpdate ntp.nict.jp syslog
dashboard accumulate traffic on
RTX1210のFWアップデート
工場出荷状態のFWだとIPv4 over IPv6のトンネリングの設定ができないのでFWをアップデートする必要があります。
※ IPoE方式だとルータの設定なしではIPv4の通信ができないのでIPv4 over IPv6の設定が必要です。
FWのアップデート方法はこちらのPDFを参考に行なってください。
筆者は外部メモリでアップデートしました。
RTX1210の設定変更
RTX1210にアクセス後にadministrator
と入力すると設定を変更するモードに変わります。
(RTX1210) > administrator
Password: <パスワードを入力する(初期状態の場合は何も入力せずに「Enter」)>
(RTX1210) #
前提
- RTX1210の「LAN1」を家のネットワーク機器に接続します。
- RTX1210の「LAN2」をインターネットに接続します。
- 「VLANなし」の設定を記載します。
- インターネットプロバイダとの契約は「V6プラス」です。
IPv6の設定
LAN2のDHCPv6クライアントの設定
ipv6 lan2 dhcp service client ir=on
LAN2がISPから「グローバルルーティングプレフィックス」を取得できるようになります。
その後の手順でLAN1のプレフィックスをLAN2で取得した「グローバルルーティングプレフィックス」に設定することで、LAN1内の機器がインターネットと通信できるようになります。
参考: DHCPv6クライアント
参考: IPv6アドレス
RAメッセージ送信の設定
ipv6 prefix 1 ra-prefix@lan2::/64
ipv6 lan1 rtadv send 1 o_flag=on
LAN1内の機器に対してルータがRA(Router Advertisement)メッセージを送信するようになります。
RAメッセージで配布するプレフィックスがLAN2で取得した「グローバルIPv6プレフィックス」になります。
LAN1のDHCPv6サーバの設定
ipv6 lan1 dhcp service server
LAN1内にDHCPv6サーバを構築します。
LAN1のプレフィックスの設定
ipv6 lan1 address ra-prefix@lan2::1/64
LAN2のプレフィックスをLAN1に適用されます。
LAN1内のIPアドレスに「グローバルルーティングプレフィックス」が設定されるのでLAN1の機器はインターネットと通信ができるようになります。
セキュリティ
ipv6 lan2 secure filter in 200030 200031 200038 200039
ipv6 lan2 secure filter out 200099 dynamic 200080 200081 200082 200083 200084 200098 200099
ipv6 filter 200030 pass * * icmp6 * *
ipv6 filter 200031 pass * * 4
ipv6 filter 200038 pass * * udp * 546
ipv6 filter 200039 reject * *
ipv6 filter 200099 pass * * * * *
ipv6 filter dynamic 200080 * * ftp
ipv6 filter dynamic 200081 * * domain
ipv6 filter dynamic 200082 * * www
ipv6 filter dynamic 200083 * * smtp
ipv6 filter dynamic 200084 * * pop3
ipv6 filter dynamic 200098 * * tcp
ipv6 filter dynamic 200099 * * udp
IPv4の設定
IPv4 over IPv6トンネル
tunnel select 1
tunnel encapsulation map-e
tunnel map-e type v6plus
ip tunnel mtu 1460
ip tunnel secure filter in 200030 200039
ip tunnel secure filter out 200099 dynamic 200080 200082 200083 200084 200098 200099
ip tunnel nat descriptor 1000
tunnel enable 1
IPv4 over IPv6についてはこちらのHPを参考にしてください。
※ IPoE方式だとルータの設定なしではIPv4の通信ができないのでIPv4 over IPv6の設定が必要です。
セキュリティ
ip filter 200030 pass * 192.168.100.0/24 icmp * *
ip filter 200039 reject * *
ip filter 200099 pass * * * * *
ip filter dynamic 200080 * * ftp
ip filter dynamic 200082 * * www
ip filter dynamic 200083 * * smtp
ip filter dynamic 200084 * * pop3
ip filter dynamic 200098 * * tcp
ip filter dynamic 200099 * * udp
NAT
nat descriptor type 1000 masquerade
nat descriptor address outer 1000 map-e
DNS
dns host lan1
dns service fallback on
dns server dhcp lan2
DHCP
dhcp service server
dhcp server rfc2131 compliant except remain-silent
dhcp scope 1 192.168.100.2-192.168.100.191/24
デフォルトデートウェイ
ip route default gateway tunnel 1
その他の設定
ポート8に繋いだPCでその他のポートの通信をみたいので、ポートミラーリングの設定をします。
lan port-mirroring lan1 8 in 1 2 3 4 5 6 7 out 1 2 3 4 5 6 7
LAN1のポート1~7の受信・送信された通信データがポート8にコピーされます。
全体設定
# RTX1210 Rev.14.01.42 (Fri Jul 5 11:17:45 2024)
# MAC Address : ******, ******, ******
# Memory 256Mbytes, 3LAN, 1BRI
# main: RTX1210 ver=00 serial=****** MAC-Address=****** MAC-Addr
ess=****** MAC-Address=****** TAM=11
# Reporting Date: Dec 7 15:38:26 2024
console character ja.utf8
ip route default gateway tunnel 1
ipv6 prefix 1 ra-prefix@lan2::/64
lan port-mirroring lan1 8 in 1 2 3 4 5 6 7 out 1 2 3 4 5 6 7
ip lan1 address 192.168.100.1/24
ipv6 lan1 address ra-prefix@lan2::1/64
ipv6 lan1 rtadv send 1 o_flag=on
ipv6 lan1 dhcp service server
switch control use lan1 on terminal=on
ipv6 lan2 secure filter in 200030 200031 200038 200039
ipv6 lan2 secure filter out 200099 dynamic 200080 200081 200082 200083 200084 200098 200099
ipv6 lan2 dhcp service client ir=on
ngn type lan2 ntt
tunnel select 1
tunnel encapsulation map-e
tunnel map-e type v6plus
ip tunnel mtu 1460
ip tunnel secure filter in 200030 200039
ip tunnel secure filter out 200099 dynamic 200080 200082 200083 200084 200098 200099
ip tunnel nat descriptor 1000
tunnel enable 1
ip filter 200030 pass * 192.168.100.0/24 icmp * *
ip filter 200039 reject * *
ip filter 200099 pass * * * * *
ip filter dynamic 200080 * * ftp
ip filter dynamic 200082 * * www
ip filter dynamic 200083 * * smtp
ip filter dynamic 200084 * * pop3
ip filter dynamic 200098 * * tcp
ip filter dynamic 200099 * * udp
nat descriptor type 1000 masquerade
nat descriptor address outer 1000 map-e
ipv6 filter 200030 pass * * icmp6 * *
ipv6 filter 200031 pass * * 4
ipv6 filter 200038 pass * * udp * 546
ipv6 filter 200039 reject * *
ipv6 filter 200099 pass * * * * *
ipv6 filter dynamic 200080 * * ftp
ipv6 filter dynamic 200081 * * domain
ipv6 filter dynamic 200082 * * www
ipv6 filter dynamic 200083 * * smtp
ipv6 filter dynamic 200084 * * pop3
ipv6 filter dynamic 200098 * * tcp
ipv6 filter dynamic 200099 * * udp
dhcp service server
dhcp server rfc2131 compliant except remain-silent
dhcp scope 1 192.168.100.2-192.168.100.191/24
dns host lan1
dns service fallback on
dns server dhcp lan2
RTX1210とインターネットの接続
RTX1210のLAN2にインターネットとのLANケーブルを接続します。
家のネットワークの無線対応
今のままではRTX1210と繋がっている機器しかインターネットと通信できないです。
無線LANルータとRTX1210を接続することでAmazon EchoなどのWi-fi対応機器をインターネットと通信できるようにします。
RTX1210のLAN1のポート1~7の任意のポートと無線LANルータを接続します。
通信の確認
通信確認用PCにWiresharkをインストール
自分はMacにインストールしました。
通信確認用PCとRTX1210の接続
Mac(USBタイプのNIC)とRTX1210のLAN1のポート8をLANケーブルで接続します。
※ ポートミラーリングしたポートを接続してください。
Wiresharkで通信監視
USB NIC(筆者の環境ではAX88179A)を選択してWiresharkを起動します。
Wiresharkの対象選択画面
Wiresharkの通信監視画面
ゲーム機のIPアドレス
記事の冒頭で見たようにゲーム機など家のネットワーク通信が確認できました。
まとめ
ポートミラーリング + Wiresharkで家のネットワーク通信を見ることができました。
次記事書くなら、下記あたりかなーの気持ちです。
- ntopng導入
- IPv6あたり
- TURNやSTUNサーバについて
アドベントカレンダー予告
明日は yuta_tsuge さんが投稿します!!!
「レバテック開発部 Advent Calendar 2024」をぜひご購読ください🥳
レバテック開発部の公式テックブログです! レバテック開発部 Advent Calendar 2024 実施中: qiita.com/advent-calendar/2024/levtech
Discussion