Windowsの端末でネットワークの設定を確認していると、0.0.0.0というデフォルトゲートウェイが「勝手に」追加されていることがあります。自分で設定した覚えはないのに、なぜか存在する。しかもアダプターの設定画面からは見えないし消せない。この謎の挙動に悩まされたことがある方は少なくないはずです。
本記事では、GW 0.0.0.0が発生する仕組みと、コマンドプロンプトから確実に削除する方法を解説します。
検証作業中、pingがどうしても通らない状況に陥りました。設定は間違いないはずなのに、なぜ?と思いながら端末でipconfigを打ってみると、自分が設定したゲートウェイとは別に、GW 0.0.0.0がいつの間にか入っていました。
アダプターの設定画面を確認しても0.0.0.0は表示されず、当然GUIから消す手段もありません。結局コマンドプロンプトでルーティングテーブルを確認・削除したところ、pingが通るようになりました。「設定は合ってるのになぜ?」という状況になったらまずルーティングテーブルを疑うのが鉄則だと実感した案件です。
GW 0.0.0.0(宛先 0.0.0.0/0)は、OSのルーティングテーブル上のデフォルトルートを意味します。本来は正常な設定です。ただし、Windowsでは複数の経路(複数NIC・VPN接続・DHCPの自動設定など)が組み合わさると、意図しないデフォルトルートが追加されることがあります。
主な発生原因は以下の通りです。
| 原因 | 詳細 |
|---|---|
| DHCPによる自動設定 | DHCPサーバーがデフォルトゲートウェイを配布すると、OSが自動でルーティングテーブルに追加する |
| VPN接続 | VPNクライアントが接続時にデフォルトルートを追加する。VPN切断後も残るケースあり |
| 複数NIC環境 | 有線・無線など複数のアダプターが同時に有効になっていると、それぞれのGWが競合する |
| 手動設定の残留 | 過去にコマンドで追加したルートがOSに残っているケース |
GW 0.0.0.0はWindowsのアダプター設定画面(コントロールパネル)には表示されません。ルーティングテーブル上にのみ存在するため、コマンドで確認・削除する必要があります。
コマンドプロンプトを開いて(管理者権限不要)、以下を実行します。
route print出力例は以下のようになります。0.0.0.0という行がデフォルトルートです。
IPv4 ルート テーブル
===========================================================================
アクティブ ルート:
ネットワーク宛先 ネットマスク ゲートウェイ インターフェイス メトリック
0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.100 25
0.0.0.0 0.0.0.0 10.0.0.1 192.168.10.50 100 ← 不要なGW
192.168.1.0 255.255.255.0 リンク上 192.168.1.100 281上の例では10.0.0.1を経由するデフォルトルートが不要なものです。ゲートウェイの列とインターフェイスの列を確認して、意図しない行を特定します。
管理者権限でコマンドプロンプトを開いて以下を実行します。(スタートメニューで「cmd」と検索→右クリック→「管理者として実行」)
route printで確認した不要なゲートウェイのIPアドレスを指定して削除します。
route delete 0.0.0.0 mask 0.0.0.0 10.0.0.1※ 10.0.0.1 の部分を削除したいGWのIPに置き換えてください
再度route printを実行して、不要な行が消えているか確認します。
route print削除後にpingで通信が回復しているか確認します。
ping 8.8.8.8route deleteコマンドの変更はOSを再起動すると元に戻ることがあります。VPNソフトやDHCPが再度GWを追加するためです。再起動後も消えた状態を維持するには、発生原因(VPNの設定やDHCP配布内容)を根本から見直す必要があります。
再起動しても0.0.0.0が戻る場合は、原因を特定して根本から対処します。
| 原因 | 根本対処 | 確認コマンド |
|---|---|---|
| DHCPが配布している | DHCPサーバー側でゲートウェイの配布設定を変更する。または対象NICをスタティックIPに変更してGWを空欄にする | ipconfig /allでDHCPサーバーを確認 |
| VPNが追加している | VPNクライアントの設定で「デフォルトゲートウェイをVPN経由にしない」オプションをOFFにする(スプリットトンネリング) | VPN切断後にroute printで再確認 |
| 複数NICの競合 | 使用しないNICを無効にするか、各NICのGW設定を整理する | route printでインターフェイス欄を確認 |
図1: GW 0.0.0.0が発生する主な原因(現場経験ベース)
図2: このトラブル対応で使うコマンド使用頻度
Windowsのルーティングテーブルはアダプターの設定(GUI)とは別のレイヤーで管理されています。VPNやDHCPはGUIを経由せずに直接OSのルーティングテーブルを書き換えるため、GUIには表示されません。route printでのみ確認できます。
route deleteはその場限りの変更です。再起動後も維持するには、VPNの設定変更・DHCPサーバーの設定修正・不要NICの無効化など、発生源を断つ必要があります。
route addで追加し直せます。例:route add 0.0.0.0 mask 0.0.0.0 192.168.1.1。PCを再起動すれば元の状態に戻ることも多いです。
端末に0.0.0.0のデフォルトゲートウェイが勝手に入る問題は、アダプター設定画面では確認・削除できません。コマンドプロンプトで対処します。
route printでルーティングテーブルを確認して不要なGWを特定するroute delete 0.0.0.0 mask 0.0.0.0 <GWのIP>(管理者権限)で削除する- 再起動で戻る場合はVPN設定・DHCPサーバー・複数NICなど発生源を根本から対処する
- 「設定は合っているのに通信できない」という状況はルーティングテーブルを最初に確認する習慣をつけると早期解決につながる


