スタティックルーティングによるHTTP接続でハマった話

2.5K Views

May 05, 23

スライド概要

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

インターネット ONU L2SW ・自宅NWはルータ配下の192.168.0.0/24 ・HGWのGUIアクセスのためPC2へ ・192.168.0.0/24(無線) ・192.168.1.0/24(有線) を設定しPC1からRDPで アクセス/管理 ・OSはWindows10 ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.0/24 HGW WAN TEL TEL 192.168.1.0/24 PC1 192.168.1.X 192.168.0.X PC2 電話機 FAX サーバ

2.

インターネット ONU L2SW ・PC2の無線/有線NIC併用により通信不 安定、RDPできないことが多かったため、 有線接続でPC1から一元管理に変更した い ・端末への設定は加えず、できるだけ ルータ/HGWの設定変更で実現したい (HGWのDHCP機能はオフで運用) ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.0/24 HGW WAN TEL TEL 192.168.1.0/24 PC1 192.168.1.X 192.168.0.X PC2 電話機 FAX サーバ

3.

インターネット ONU L2SW ・参考 図の通りスタティックルートを設定して みた。 192.168.1.1へpingは飛ぶがhttpでアクセ スできなかった。(あんまり調査しな かった) ミラー ポート Global-IP (PPPoE) ルータ Global-IP (ひかり電話) 宛先:192.168.1.0/24 GW:192.168.0.X 192.168.0.0/24 HGW WAN 宛先:192.168.0.0/24 GW:192.168.1.X TEL TEL 192.168.1.0/24 192.168.1.X 192.168.0.X PC1 PC2 電話機 FAX サーバ

4.

インターネット ONU ・HGW-ルータ間を有線接続し、 スタティックルートを設定 ・各区間でping試験/PC1→HGWへhttp 接続試験を実施 L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

5.

インターネット ONU ・PC1→HGW ping OK ・ルータ→HGW ping OK ・HGW→ルータ ping OK ・HGW→PC1 ping NG(タイムアウト) ・PC1→HGW http NG(TCPリセット) L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

6.

インターネット ONU ・PC1→HGW ping OK ・ルータ→HGW ping OK ・HGW→ルータ ping OK ・HGW→PC1 ping NG(タイムアウト) ・PC1→HGW http NG(TCPリセット) L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

7.

インターネット ONU ・PC1→HGW ping OK ・ルータ→HGW ping OK ・HGW→ルータ ping OK ・HGW→PC1 ping NG(タイムアウト) ・PC1→HGW http NG(TCPリセット) L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

8.

インターネット ONU ・PC1→HGW ping OK ・ルータ→HGW ping OK ・HGW→ルータ ping OK ・HGW→PC1 ping NG(タイムアウト) ・PC1→HGW http NG(TCPリセット) L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

9.

インターネット ONU ・PC1→HGW http NG(TCPリセット) L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

10.

切り分け

11.

インターネット ONU L2SW ミラー ポート 事象① HGWからPC1へのping疎通不可 ・分かっていること ・PCからHGWへのpingはOK ・ルータからのpingもOK ・HGWからのpingのみNG →外部からのpingにOK/NGのパターン がある Ping OK Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

12.

インターネット ONU 事象① HGWからPC1へのping疎通不可 ・ルータとHGWの差分を考える ・割り当てられているIPが異なる →ブロードキャストドメインが異なる (=所属するネットワークが異なる) L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

13.

インターネット ONU L2SW ミラー ポート 事象① HGWからPC1へのping疎通不可 ・切り分けのためHGWのDHCPを オンに変更 ・PC1をHGWに接続 →ping疎通OKを確認。 差分として考えられるのはPC1のIPアド レス Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 宛先:192.168.1.1/32 GW:192.168.0.1 Ping ok 電話機 宛先:192.168.0.0/24 GW:192.168.1.1 PC1 FAX サーバ

14.

インターネット ONU 事象① HGWからPC1へのping疎通不可 ・改めて事象を整理するとローカルNW外 (=リモートNW)からのpingがNGとな る。 ローカルNWからのpingがokなことから、 PC1側でpingが止まっていそう。 L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

15.

PC1のファイアウォール設定を確認 ・プライベートプロファイルがアクティ ブ(ルールがなければ受信できない) ・ICMPv4(Ping)受信に関する有効な ルールは2つのみ

16.

PC1のファイアウォール設定を確認 ・下段側の設定からリモートNWからの pingはローカルと同一NWからのみである ことが分かる。 →HGWからのPingへ応答するにはリモー トアドレス(192.168.1.1)からのPing要 求許可が必要 上段で許可しているのはICMP Type:3 Code:4のみ。 Type3 – Destination Unreachable(到達不能) Code4 – Source Route Failed 下段でいわゆるPing応答を許可している。 しかし、許可されているのはローカルNWのみ。 (ローカルサブネットはローカルNWと同一のサ ブネットワークアドレスを持つアドレスという意 味)

17.

インターネット ONU 事象① HGWからPC1へのping疎通不可 L2SW 原因:Windows FWにてリモートアドレ スからのPing要求が未許可 ミラー ポート 対処:リモートアドレス(192.168.1.1) からのPing要求を許可する設定を追加し 改善。 Global-IP (PPPoE) ルータ 192.168.0.1 FWへリモートアドレ ス(192.168.1.1)からの Ping許可設定を追加 Global-IP (ひかり電話) HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

18.

インターネット ONU 事象② PC1からHGWへのHTTPアクセス不可 ・分かっていること ・双方向でPing疎通OK(L3までOK) ・直接接続ではHTTPアクセス可能 →一つずつ可能性を潰していく L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

19.

・PC1からブラウザでのアクセス結果 ・ブラウザでエラー内容変化なさそう ・IEモード以外はエラー内容が同一 FireFox Google Chrome Microsoft Edge(IEモード) ※WindowsUpdateによ りInternet Explorerは使 用不可 Microsoft Edge

20.

インターネット ONU 事象② PC1からHGWへのHTTPアクセス不可 ・双方向Ping OK ・特定ブラウザの問題ではない ・PC1からの無線接続にてHTTPアクセス 可能を確認 →有線接続のみでアクセス不可 L2SW ミラー ポート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.0/24 HGW WAN 192.168.1.1 PC2 TEL TEL 192.168.1.X/24 ※P1での接続方法 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

21.

インターネット ONU L2SW ミラー ポート Global-IP (PPPoE) 事象② PC1からHGWへのHTTPアクセス不可 ・分かっていること ・双方向でPing疎通OK(L3までOK) ・直接接続ではHTTPアクセス可能 ・無線接続にてHTTPアクセス可能 ・Ubuntuからの有線接続にて アクセス可能を確認 ・PC2(Windows)からは アクセス不可 →Windowsでのみアクセス不可 Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 OSをWindows10から Ubuntu(Linux)へ 変更 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

22.

インターネット 事象② PC1からHGWへのHTTPアクセス不可 ・判明している発生条件 1.ルータ1を経由した有線接続 2.接続元PCのOSがWindows10 3.ルータ/HGWにてスタティック ルーティングを実施 ONU L2SW ミラー ポート 1.→ネットワーク起因に見える 2.→端末起因に見える 3.→机上設定には問題なく見える Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

23.

インターネット 事象② PC1からHGWへのHTTPアクセス不可 ・課題:前提条件は特定できたが、 未だ原因は不明 ONU L2SW キャプチャ ポイント③ ミラー ポート 宛先:192.168.1.1/32 GW:192.168.0.1 ・パケットキャプチャを行い有線での 成功と失敗パターンを比較する。 確認観点 ポイント①:正常系通信 ポイント②:送出パケットの確認 ポイント③:途中経路の確認 ルータ 192.168.0.0/24 キャプチャ ポイント② 宛先:192.168.0.0/24 GW:192.168.1.1 HGW WAN 192.168.1.1 PC2 TEL TEL キャプチャ ポイント① 192.168.1.0/24 PC1 電話機 FAX サーバ 192.168.1.X/24 ※P1での接続方法

24.

キャプチャポイント① 成功パターン HTTP リクエスト HTTPレスポンス (ベーシック認証) HTTPレスポンス (HTML出力) TCPコネク ション確立 1.PC2とHGW間でTCPコ ネクションを確立 2.PC2→HGWへHTTPリ クエスト 3.HTTPエラーレスポンス (401)が返されているが ベーシック認証によるも の 4.最終的にHTTPレスポン ス(200)が返されWebGUIの表示に成功

25.

キャプチャポイント② PCからHTTP通信ができない TCPコネク ション確立 HTTP リクエスト TCP再送要求 ICMPリダイレクト要求 TCPリセット要求 以後もTCP確立~リセット要求 までを繰り返している 1.PC1とHGW間でTCPコ ネクションを確立 2.PC1→HGWへHTTPリ クエスト 3.次のパケットでPC1か らTCP再送 (Retransmission)あり。 要求パケットは No.2807:HTTPリクエス トに対するACK応答 4.その次のパケットで DFG(ルータ)から ICMPリダイレクト要求あ り。リダイレクト先は 192.168.1.1 5.最終的にPC2からTCP リセット要求あり

26.

キャプチャポイント② PCからHTTP通信ができない TCPコネク ション確立 HTTP リクエスト TCP再送要求 ICMPリダイレクトによる経路の追加が見当たらない ・TCPに関しては後述 ・ICMPリダイレクトにより HGWへのゲートウェイアドレス (パケット送付先)の変更要求 ※192.168.1.1へのパケットを 192.168.0.1でなく、192.168.1.1 へ直接送出するルーティングの 追加要求 ・PC1のroute printに上記経路 の追加はなし →ICMPリダイレクトが失敗して いる

27.

キャプチャポイント② PCからHTTP通信ができない ・上記ははPC2から直結した場合のパケットキャプチャ ・ICMPリダイレクトはより良いIPルーティング経路がある場合に 送出される ・PC2はHGWと同一ネットワークからアクセスしているため、 リダイレクトは発生しない

28.

キャプチャポイント②【参考】 Ubuntuからアクセス時のTCP dump ICMPリダイレクトによる経路の追加が見当たらない ・TCP再送要求やICMPリダイレクトの発生を確認 ・TCP再送は成功し、HTTPアクセスが実現している。 ・ICMPリダイレクトは発生しているが、 ubuntuへも経路の追加はなく失敗していた。

29.

インターネット 事象② PC1からHGWへのHTTPアクセス不可 ・判明している発生条件 1.ルータ1を経由した有線接続 2.接続元PCのOSがWindows10 3.ルータ/HGWにてスタティック ルーティングを実施 ONU L2SW ミラー ポート Global-IP (PPPoE) ・パケットキャプチャにより判明 4.TCPコネクションに問題あり 5.ICMPリダイレクトがルータにて失敗 →TCPコネクション確立にて解決できそう Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

30.

キャプチャポイント② PCからHTTP通信ができない TCPコネク ション確立 HTTP リクエスト TCP再送要求 TCP再送及びリセットに ついて 1.PC1とHGW間でTCPコ ネクションを確立 2.PC1→HGWへHTTPリ クエスト 3.HTTPリクエストパケッ トのTCP内容は左記の通 り 4.上記パケットについて No.2834で再送している →HGW側よりACK応答が ないことを意味する

31.

キャプチャポイント② PCからHTTP通信ができない TCP再送及びリセットに ついて TCPコネク ション確立 5.中段にてPC1とHGWで TCPコネクション再確立 SYN/ACK再送要求 6.その後HGWから3ウェ イハンドシェイクの SYN/ACK再送あり →PC1からのACKパケッ トが届いていない

32.

キャプチャポイント② PCからHTTP通信ができない TCP再送及びリセットに ついて 8.TCP再送が複数回失敗 し、PC1側から一方的に TCPリセットを実施 PC1/HGW双方向にて ACKパケットのみ到達し ない場合がある ・HGWがACKパケットを 送出しているか ・PC1のACパケットが届 いているか TCPリセット →キャプチャポイント③ で確認を実施

33.

キャプチャポイント③ ルータ・HGW間のパケットキャプチャ TCP確立のACKパケットが送出 されていない ACKパケットが届かない =SYN/ACKパケットが対向側へ 届いていないと判断し再送して いる TCPコネクションが確立してい ないのでHTTPリクエストが届 いていない ・PC1からHGWへのHTTPアクセス不可 特定条件下のPC1-HGW間のTCPコネクション確立において、3ウェイハンド シェイクの確認応答パケット(ACK)が途中のルータで破棄されていたため、 HTTP通信が開始できなかった。

34.

インターネット ONU L2SW ミラー ポート 事象② PC1からHGWへのHTTPアクセス不可 ・判明している発生条件 1.ルータ1を経由した有線接続 2.接続元PCのOSがWindows10 3.ルータ/HGWにてスタティック ルーティングを実施 4.上記条件を満たすとき、ルータにて TCP確立のACK応答が破棄され HTTP通信ができない →3.の条件を変更し検証 Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

35.

インターネット 事象② PC1からHGWへのHTTPアクセス不可 ・PC1にHGWへのスタティック ルートを設定(GWは自IP) ・ルータ側のHGWへのスタティック ルートを削除 ・HGW側のスタティックルートは 返りの通信に必要なため残置 ONU L2SW ミラー ポート →HTTP通信可能を確認 原因は特定条件下のスタティックルート Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 削除 192.168.1.0/24 PC1 宛先:192.168.1.1/32 GW:192.168.0.X 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ

36.

インターネット 事象② PC1からHGWへのHTTPアクセス不可 ・発生条件を赤文字にて図示 1.ルータ1を経由した有線接続 2.接続元PCのOSがWindows10 3.ルータにてスタティックルーティング を実施 ONU L2SW ミラー ポート →1,2は希望条件のため変更が難しい。端末 側にてスタティックルートを行うことで改 善。 Global-IP (PPPoE) Global-IP (ひかり電話) ルータ 192.168.0.1 HGW WAN 192.168.1.1 192.168.0.0/24 PC2 TEL TEL 192.168.1.0/24 PC1 Windows10 宛先:192.168.1.1/32 GW:192.168.0.1 宛先:192.168.0.0/24 GW:192.168.1.1 電話機 FAX サーバ 今後の課題 PC1以外のWindows端末でもHGWへアクセスできるようにしたい。→DHCPでのスタティックルート配布検討が必要。