netshで固定IPを設定できない原因と対処法|設定後にping www.google.comが通らない時の切り分け

Windowsで固定IPをコマンド一発で設定したいとき、netshは今でも便利です。ただしインターフェイス名の指定ミスや、ゲートウェイ/DNS未設定があると「設定できない」「設定後にwww.google.comへ疎通できない」といったトラブルが起きがち。最短で原因を切り分ける手順をまとめます。

目次

netshで起きるトラブルは2種類に分けて考える

「netshで固定IPを設定したいのにエラーで失敗する」ケースと、「コマンドは通ったのにインターネット疎通や名前解決ができない」ケースでは、疑うべきポイントが少し違います。まずは症状を整理して、無駄な遠回りを減らしましょう。

症状よくある原因最初にやること
netsh実行時に「インターフェイスが不明」などで失敗インターフェイス名の指定ミス、引用符(””)不足、管理者権限不足、対象NICが無効/未接続インターフェイス名・インデックスを正確に確認してから再実行
固定IP設定後に ping www.google.com が通らないデフォルトゲートウェイ未設定/誤り、DNS未設定/誤り、サブネットマスク誤り、経路(ルータ/VLAN)問題ping 8.8.8.8 と nslookup で「経路」と「DNS」を切り分け

まず結論:最優先で疑うのは「インターフェイス名の不一致」

netsh interface ipv4 set address "Ethernet" static ... のように実行して失敗する場合、原因の本命は「指定しているインターフェイス名が実機と一致していない」ことです。特に以下のような環境差で、名前は簡単にズレます。

  • Windowsの表示言語が日本語(例:Ethernet ではなく イーサネット)
  • 古い呼称が残っている(例:Local Area Connection)
  • Wi-Fi / 有線 / USB-LAN / VPN / 仮想スイッチ(Hyper-VのvEthernet等)が混在している
  • 同型NICが複数あり、意図しない方を設定している

そして「コマンドは成功したのにwww.google.comへ疎通できない」場合は、ゲートウェイやDNSが未設定、もしくは値がネットワーク設計と合っていない可能性が高いです。固定IPは、IPアドレスだけ入れてもインターネットに出られないことが多い点が落とし穴です。

作業前の注意:リモート接続中は“切断”を前提に段取りする

RDPやリモート管理で作業している場合、IP変更の瞬間にセッションが切れることがあります。サーバー機での作業は特に、以下を意識してください。

  • 可能ならコンソール(iLO/iDRAC/VMコンソール等)に切り替えて作業する
  • 変更前の設定を控える(復旧用)
  • 同一セグメント内で別の管理経路(別NIC、別管理IP)があるか確認する

変更前に“現状を保存”しておく(復旧が早い)

ネットワーク変更は、うまくいかないと作業端末そのものが孤立します。切り戻しを速くするために、最低限「今の設定」をテキストで保存しておくと安心です。

  • netsh dump:現在のネットワーク設定を再現できるスクリプトとして出力
  • ipconfig /all:画面上でも確認しやすい形で控えを残す
  • route print:既定経路(0.0.0.0/0)がどこを向いているかを控える
netsh dump > "C:\NetConfig\netsh_config.txt"
ipconfig /all > "C:\NetConfig\ipconfig_all.txt"
route print > "C:\NetConfig\route_print.txt"

フォルダがない場合は先に作成してください。万一のとき、このログがあるだけで復旧スピードが段違いになります。

インターフェイス名を正確に確認する(ここがズレると失敗する)

netshのエラーを最短で潰すには、まずOSが認識しているインターフェイス名(またはインデックス)をそのまま使うのが鉄則です。特に名前にスペースや括弧が含まれることもあるため、基本は引用符で囲みます。

確認コマンド用途見るべきポイント
netsh interface show interfaceインターフェイス名を一覧で確認(最短)目的のNICの「インターフェイス名」をそのままコピー
netsh interface ipv4 show interfacesインデックス(Idx)や状態も含めて確認Idxと名前、状態(Connected/Disconnected)
netsh interface ipv4 show configIP/ゲートウェイ/DNSなど、現在設定の確認固定/ DHCP、デフォルトゲートウェイ、DNSサーバー
ipconfig /allWindows標準の表示で全体像を確認IPv4アドレス/サブネット/ゲートウェイ/DNSの整合

「Ethernet」と決め打ちせず、実際に表示された名称を使います。たとえば表示が「イーサネット」なら、netsh側でも同じ文字列を使う必要があります。

名前が変わりやすい環境は「Idx(インデックス)」指定が安全

多言語環境やテンプレート展開(VM複製)では、インターフェイス名が微妙に変わることがあります。その場合は、一覧に出る Idx(インデックス) を使うとスクリプトが安定します(同一マシン内での運用に向きます)。

netsh interface ipv4 show interfaces

例として、Idxが 12 のNICに固定IPを入れる場合は次のように指定できます。

netsh interface ipv4 set address name=12 source=static address=192.168.10.50 mask=255.255.255.0 gateway=192.168.10.1 gwmetric=1

netshで固定IPを設定する(正しい名前で、ゲートウェイまで入れる)

固定IP設定で最低限押さえるべき項目は、IPアドレス、サブネットマスク、デフォルトゲートウェイです。インターネット疎通が必要な端末/サーバーなら、ゲートウェイはほぼ必須です(社内閉域のみで完結する端末は例外)。

設定項目意味よくあるミス
IPアドレス端末自身のアドレスDHCP配布範囲と重複、別セグメントの値を入れる
サブネットマスク同一セグメントの範囲/24のつもりで/16を入れて経路が崩れる、逆も多い
デフォルトゲートウェイ外部ネットワークへ出るための出口ゲートウェイ未設定、ゲートウェイが同一サブネット外
GWメトリック複数経路がある場合の優先度別NICの経路が優先され、意図しない出口から出る

短い書き方(覚えやすい定番)

実務でよく使われるのは、引数を並べる短い形式です。

netsh interface ipv4 set address name="イーサネット" static 192.168.10.50 255.255.255.0 192.168.10.1

パラメータを明示する書き方(スクリプト向き)

引数の意味を明確にしたい場合は、パラメータ形式が安全です。ゲートウェイを設定するなら、メトリック(例:1)も明示すると混乱が減ります。

netsh interface ipv4 set address name="イーサネット" source=static address=192.168.10.50 mask=255.255.255.0 gateway=192.168.10.1 gwmetric=1

テストだけしたい場合は「store=active」も使える

「まずは再起動までの間だけ固定IPで動作確認したい」というときは、設定を一時的にする store=active が便利です。問題なければ store=persistent(既定)で入れ直す、という進め方が安全です。

netsh interface ipv4 set address name="イーサネット" source=static address=192.168.10.50 mask=255.255.255.0 gateway=192.168.10.1 gwmetric=1 store=active

「社内ネットワークにはつながるが、外(インターネット)に出なくてよい」という設計なら、あえてゲートウェイを入れず gateway=none とする構成もあります。ただし、その場合は当然 ping 8.8.8.8 のような外部疎通は失敗します。目的に合わせて判断してください。

DHCPへ戻したい(切り戻し用)

固定IPの設定が原因で通信不能になったとき、すぐDHCPに戻せるようにしておくと復旧が早いです。

netsh interface ipv4 set address name="イーサネット" source=dhcp

DNSを設定する(www.google.comが通らない最大要因)

ping www.google.com は「名前解決(DNS)」と「疎通(経路)」の両方が必要です。固定IPでよくあるのは、IP/ゲートウェイは正しいのにDNSが未設定で名前解決できないパターンです。

DNSを静的に指定する(推奨:primary + 予備)

netsh interface ipv4 set dnsservers name="イーサネット" source=static address=8.8.8.8

予備DNS(セカンダリ)を追加する場合は、次のように追加します(indexは2を指定することが多いです)。

netsh interface ipv4 add dnsservers name="イーサネット" address=8.8.4.4 index=2

DNSをDHCPに戻す

netsh interface ipv4 set dnsservers name="イーサネット" source=dhcp

設定後に必ず確認する

DNS設定は「入れたつもり」になりやすいので、次の確認をセットで行うのが確実です。

netsh interface ipv4 show dnsservers
ipconfig /all

設定が反映されたかを確認するチェックリスト

netshがOKを返しても、意図したNICに入っていなかったり、別の設定が優先されたりすると「設定したのに直らない」状態になります。以下の観点で確認します。

確認項目確認コマンドOKの目安
対象NICが合っているかnetsh interface ipv4 show interfaces目的のNIC名/Idxを特定できている
IPv4アドレス/マスクipconfig /all入力したIP/マスクになっている
デフォルトゲートウェイipconfig /allゲートウェイが設定され、同一サブネット内
DNSサーバーnetsh interface ipv4 show dnsservers意図したDNSが表示される
経路の優先順位route print0.0.0.0/0 の経路が意図したNIC/ゲートウェイ

「www.google.comが通らない」を最短で切り分ける(DNSか、経路か)

ここからは、固定IP設定後に疎通できない場合の切り分けです。ポイントはIPアドレス直打ち(経路)と名前解決(DNS)を分けて確認することです。

切り分け手順(この順番が早い)

  1. NICがリンクしているか(ケーブル/無線)
  2. ゲートウェイに到達できるか
  3. 外部IP(例:8.8.8.8)に到達できるか
  4. DNSで名前解決できるか(nslookup)
  5. 名前解決したIPへ到達できるか

具体的には、次のコマンドを順に実行します。

ping 127.0.0.1
ping <自分のIPv4アドレス>
ping <デフォルトゲートウェイ>
ping 8.8.8.8
ping -4 www.google.com
nslookup www.google.com
結果状況の見立て次に見るポイント
ゲートウェイまで通らない同一LAN内の問題(IP/マスク/物理/VLAN/無線接続)IP重複、マスク誤り、ケーブル、スイッチ/VLAN、NIC無効
ゲートウェイは通るが 8.8.8.8 が通らない外部への経路がない(ゲートウェイ誤り、上位ルータ/回線側)ゲートウェイの値、ルータの設定、別NICが既定経路になっていないか
8.8.8.8 は通るが www.google.com が通らないDNS問題が濃厚(名前解決できていない)DNSサーバー設定、nslookupの結果、ipconfig /flushdns
nslookupは成功するが pingが通らないICMP遮断、ファイアウォール、経路の一部で遮断tracertでどこまで届くか、セキュリティ機器の制限

DNSが怪しいときの深掘りポイント

DNSは「サーバーアドレスが正しい」だけでなく、次の要素でハマることがあります。

  • 社内DNSしか許可されておらず、外部DNS(8.8.8.8等)へ出られない
  • VPN接続や社内プロキシの前提があり、単純な外部疎通ができない
  • DNSサフィックス(例:corp.example.local)が必要な環境で、社内名が引けない
  • 古いキャッシュが残り、切り替え直後に誤った名前解決をする

キャッシュが疑わしい場合は、次でクリアします。

ipconfig /flushdns

また、DNSサーバーを明示して応答を確認したい場合は、nslookupでサーバーを指定します。

nslookup www.google.com 8.8.8.8

経路が怪しいときの深掘りポイント(0.0.0.0/0を確認)

固定IP後に外へ出られない原因として、実は「別NICの既定経路が優先されている」こともあります。例えば、VPNアダプターや仮想アダプターが同時に有効だと、意図しない出口に向かってしまうことがあります。

次のコマンドで、既定経路(0.0.0.0)がどのインターフェイスに向いているかを確認してください。

route print

複数の既定経路がある場合は、メトリックが小さい方が優先されます。netshでゲートウェイ設定時に gwmetric=1 を入れておくと、意図した経路に寄せやすくなります(ただし環境設計により最適値は変わります)。

netshがエラーになるときに見落としがちなポイント

「インターフェイスが不明」以外にも、地味にハマりやすい点をまとめます。

  • 引用符の付け忘れ:インターフェイス名にスペースがあるときは必須(例:"Local Area Connection")
  • 管理者権限:ネットワーク設定は標準ユーザーでは拒否されることがある(管理者としてコマンドプロンプト起動)
  • 対象NICが無効:無効化されていると設定できても意図通り通信できない
  • 想定外のNICを指定:有線ではなく仮想スイッチ側に入れていた、など
  • ヘルプでサブコマンドを確認:環境によって微妙に選択肢が違うことがあるため netsh interface ipv4 ? や netsh interface ipv4 set address ? を活用
  • IPv6優先の環境:名前解決はできてもIPv6経路が未整備で遅延する場合は ping -4/ping -6 で切り分け

よくある“設定ミス”を具体例で潰す

固定IPの値が間違っていると、netsh自体は成功しても通信できません。現場でよくあるミスを、症状とセットで押さえておきましょう。

ミス起きやすい症状チェック方法対処
サブネットマスクが誤り同一セグメントのはずの機器に届かない、ARPが不自然ipconfig /all と設計書(/24, /23など)を照合正しいマスクで再設定
ゲートウェイが同一サブネット外LAN内はOKだが外へ出られないゲートウェイIPが自IP+マスクの範囲内か確認正しいGWを設定
IP重複(他端末と被る)通信が不安定、突然切れるarp -a、スイッチのMACテーブル、重複検知ログ未使用IPへ変更、DHCP予約を活用
DNSが未設定/誤りIP宛ては通るがドメイン名が引けないnslookup、netsh interface ipv4 show dnsservers正しいDNSを設定、必要なら予備も追加
別NICが既定経路になっている想定外の回線に出ようとして失敗route print(0.0.0.0/0)メトリック調整、不要NICの無効化

特殊ケース:インストールメディア/WinPEで起動している場合

Windowsのインストール環境(WinPE)やリカバリ環境で作業していると、通常のWindowsと比べてネットワーク周りが制限されます。代表的には次のような違いがあり、netshで設定しても期待通りにならないことがあります。

  • NICドライバーが読み込まれておらず、そもそもインターフェイスが出てこない
  • 起動直後はネットワークが初期化されておらず、リンクが上がっていない
  • インターフェイス名が通常起動時と異なる

WinPEでどうしても疎通を取りたい場合は、まず ipconfig でインターフェイスが存在するかを確認し、必要に応じてネットワーク初期化を試みます。

wpeutil InitializeNetwork
ipconfig /all

ただし、業務用途での恒久的な設定(固定IP化など)は、可能な限り通常起動したOS上で実施するほうが確実です。セーフモードで起動できる状況なら、そちらで作業するのも選択肢です。

どうしても直らないときの“最終リセット”

設定が泥沼化している場合、TCP/IPスタックのリセットで復旧することがあります。影響範囲が大きいので、サーバーでは特に慎重に実施してください。

  • Winsockリセット(再起動が必要になることがあります)
  • IPv4設定のリセット(再起動が必要)
netsh winsock reset
netsh interface ipv4 reset

まとめ:失敗しないための実務的な手順

  • netshが失敗する原因の本命は「インターフェイス名の不一致」。まず一覧表示で正しい名前/Idxを取る
  • 固定IPは「IPだけ」では不十分。インターネット疎通が必要ならゲートウェイとDNSもセットで設定する
  • ping 8.8.8.8 と nslookup で、経路問題かDNS問題かを最短で切り分ける
  • 複数NICやVPNがある環境は route print で既定経路(0.0.0.0/0)を必ず確認する
  • WinPE等の特殊環境では制限があるため、可能なら通常起動OSで作業する

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次