ネットワーク設定をしていて、こんなことを思ったことはありませんか?
- 「特定のネットワークへはこの経路で通信したい」
- 「サーバー構築中に別ルートを設定したい」
- 「VPN接続時に一部の通信だけ別の経路を通したい」
- 「複数のネットワークカードで通信を使い分けたい」
そんなときに必要なのがルーティング(経路情報)の追加です。
Windowsでもroute
コマンドを使えば簡単に設定できます。
この記事では:
- ルーティングの基本概念とWindowsでの必要性
- Windowsでルーティングを追加する基本的な方法
- 一時的な設定と永続的な設定の違い
- ルーティングの確認・削除・トラブルシューティング
- 実際のビジネス現場でよく使う設定例
を初心者にもわかりやすく解説します。これを読めば、自分のネットワーク経路を自在にコントロールできるようになります!
ルーティングって何?Windowsで設定する理由
ルーティング=パケットの経路指示
パソコンやサーバーは、どのネットワークにどの経路を使って通信するかを「ルーティングテーブル」で管理しています。これは、郵便配達員が住所を見て配達ルートを決めるのと似ています。
ルーティングテーブルの基本構成
項目 | 説明 | 例 |
---|---|---|
宛先ネットワーク | 通信先のアドレス範囲 | 192.168.10.0/24 |
サブネットマスク | ネットワークの範囲を指定 | 255.255.255.0 |
ゲートウェイ | 次に送る先のIPアドレス | 192.168.1.1 |
インターフェース | 使用するネットワークカード | 192.168.1.100 |
メトリック | 経路の優先度(小さいほど優先) | 1 |
よくある利用シーン
企業ネットワークでの使い分け
- 社内ネットワーク(192.168.1.0/24):通常のインターネット経由
- VPN先ネットワーク(10.0.0.0/24):専用線経由
- 監視ネットワーク(172.16.0.0/24):管理用NIC経由
サーバー構築での応用
- Webサーバーで監視通信だけ別のNICから出す
- データベースサーバーでバックアップ通信を専用回線経由にする
- 負荷分散装置で特定の通信を別ルートに振り分け
開発・テスト環境での活用
- 開発環境と本番環境の通信を分離
- 特定のAPIテストを別のサーバーに向ける
- 一時的な通信経路の変更
リモートワークでの設定
- VPN接続時に社内システムだけVPN経由
- インターネット通信は直接接続で高速化
- セキュリティレベルに応じた経路の使い分け
ルーティングを理解すると「どの通信がどこを通るのか」をコントロールできるようになります。
Windowsでルーティングを追加する方法
前提条件と準備
必要な権限
- 管理者権限でのコマンドプロンプト実行が必要
- PowerShellでも同様のコマンドが使用可能
コマンドプロンプトの起動方法
- Windows キー + R を押す
- 「cmd」と入力
- Ctrl + Shift + Enter で管理者権限で実行
基本コマンドの構文
route add の基本形
route add <宛先ネットワーク> mask <サブネットマスク> <ゲートウェイ> [オプション]
各パラメータの説明
- 宛先ネットワーク:通信先のネットワークアドレス
- mask:サブネットマスクを指定するキーワード
- サブネットマスク:ネットワークの範囲を指定
- ゲートウェイ:次のホップとなるルーターのIPアドレス
具体的な設定例
例1:特定ネットワークへの経路追加
route add 192.168.10.0 mask 255.255.255.0 192.168.1.1
この設定により:
- 192.168.10.0~192.168.10.255への通信
- 192.168.1.1をゲートウェイとして使用
- 一時的な設定(再起動で消える)
例2:特定ホストへの経路追加
route add 10.0.0.100 mask 255.255.255.255 192.168.1.1
この設定により:
- 10.0.0.100(単一ホスト)への通信のみ
- より詳細な経路制御が可能
例3:デフォルトルートの追加
route add 0.0.0.0 mask 0.0.0.0 192.168.1.1
この設定により:
- すべての通信(デフォルトルート)
- 既存のルートがない場合の最終経路
一時的設定と永続的設定
一時的な設定(デフォルト)
route add 192.168.10.0 mask 255.255.255.0 192.168.1.1
特徴
- PCを再起動すると設定が消える
- テスト用や一時的な用途に適している
- 設定ミスによる影響を最小限に抑えられる
永続的な設定
route -p add 192.168.10.0 mask 255.255.255.0 192.168.1.1
特徴
- PCを再起動しても設定が保持される
- 本格運用環境で使用
- レジストリに設定が保存される
メトリック値の指定
メトリックとは
- 経路の優先度を示す数値
- 小さい値ほど優先度が高い
- 同じ宛先に複数の経路がある場合の選択基準
メトリック値を指定した設定
route add 192.168.10.0 mask 255.255.255.0 192.168.1.1 metric 1
メトリック値の目安
- 1:最優先経路
- 10:通常の有線LAN
- 25:無線LAN
- 35:VPN接続
一時的なテストならroute add
、継続的に使用するならroute -p add
と覚えましょう。
ルーティングテーブルの確認・削除・管理
現在の設定を確認する方法
基本的な確認コマンド
route print
出力される情報
- IPv4 ルート テーブル
- ネットワーク宛先、ネットマスク、ゲートウェイ
- インターフェース、メトリック
見やすく表示するオプション
route print -4
(IPv4のみ表示)
route print 192.168.*
(特定のネットワークのみ表示)
ルーティングの削除方法
基本的な削除コマンド
route delete 192.168.10.0
マスクを指定した削除
route delete 192.168.10.0 mask 255.255.255.0
ゲートウェイも指定した削除
route delete 192.168.10.0 mask 255.255.255.0 192.168.1.1
削除時の注意点
同じ宛先で複数のルートがある場合
- マスクやゲートウェイを正確に指定
route print
で事前確認- 一つずつ慎重に削除
永続的設定の削除
- 永続的設定も通常の
route delete
で削除可能 - レジストリからも自動的に削除される
設定変更コマンド
既存ルートの変更
route change 192.168.10.0 mask 255.255.255.0 192.168.1.2
この方法で:
- 削除→追加の手順を一度で実行
- ゲートウェイの変更が簡単
- 一時的な設定変更に便利
実践的な設定例とトラブルシューティング
よくあるビジネス設定例
設定例1:VPN環境での振り分け
# 社内ネットワークはVPN経由
route -p add 10.0.0.0 mask 255.0.0.0 192.168.100.1
# 特定サーバーは直接接続
route -p add 203.0.113.100 mask 255.255.255.255 192.168.1.1
設定例2:複数NICでの通信分離
# 管理通信は専用NIC経由
route -p add 172.16.0.0 mask 255.255.0.0 172.16.1.1
# 監視通信も専用NIC経由
route -p add 192.168.200.0 mask 255.255.255.0 172.16.1.1
設定例3:障害時の迂回路設定
# メイン回線(メトリック値:1)
route -p add 10.0.0.0 mask 255.0.0.0 192.168.1.1 metric 1
# バックアップ回線(メトリック値:10)
route -p add 10.0.0.0 mask 255.0.0.0 192.168.2.1 metric 10
トラブルシューティング
問題1:設定したルートで通信ができない
確認項目
- ルーティングテーブルに正しく登録されているか
route print | findstr 192.168.10
- ゲートウェイに疎通があるか
ping 192.168.1.1
- ファイアウォールの設定
netsh advfirewall show allprofiles
問題2:複数のルートが競合している
解決方法
- メトリック値の確認と調整
- 不要なルートの削除
- より具体的な(長いマスク)ルートの追加
問題3:永続的設定が再起動後に消える
原因と対策
-p
オプションの付け忘れ- レジストリの権限問題
- ネットワークサービスの起動順序
パフォーマンス最適化
メトリック値の最適化
# 高速回線を優先
route add 0.0.0.0 mask 0.0.0.0 192.168.1.1 metric 1
# 低速回線をバックアップ
route add 0.0.0.0 mask 0.0.0.0 192.168.2.1 metric 50
ルートテーブルの整理
- 不要なルートの定期的な削除
- 重複するルートの統合
- メトリック値の見直し
PowerShellでの高度な管理
PowerShellでのルーティング操作
ルートの追加
New-NetRoute -DestinationPrefix "192.168.10.0/24" -NextHop "192.168.1.1" -PolicyStore PersistentStore
ルートの確認
Get-NetRoute | Where-Object {$_.DestinationPrefix -like "192.168.*"}
ルートの削除
Remove-NetRoute -DestinationPrefix "192.168.10.0/24" -NextHop "192.168.1.1"
スクリプトでの一括設定
複数ルートの一括設定例
# 設定するルートのリスト
$routes = @(
@{Destination="10.0.0.0/8"; Gateway="192.168.1.1"},
@{Destination="172.16.0.0/12"; Gateway="192.168.1.2"},
@{Destination="192.168.100.0/24"; Gateway="192.168.1.3"}
)
# 一括設定実行
foreach ($route in $routes) {
New-NetRoute -DestinationPrefix $route.Destination -NextHop $route.Gateway -PolicyStore PersistentStore
Write-Host "Added route: $($route.Destination) via $($route.Gateway)"
}
CSVファイルからの設定読み込み
# CSVファイルの内容例:
# Destination,Gateway,Metric
# 10.0.0.0/8,192.168.1.1,1
# 172.16.0.0/12,192.168.1.2,10
$routeConfig = Import-Csv "routes.csv"
foreach ($route in $routeConfig) {
New-NetRoute -DestinationPrefix $route.Destination -NextHop $route.Gateway -RouteMetric $route.Metric -PolicyStore PersistentStore
}
セキュリティとベストプラクティス
セキュリティ上の注意点
権限管理
- 管理者権限での操作が必要
- 設定変更の記録とログ管理
- 定期的な設定の見直し
ネットワーク分離
- 重要な通信は専用経路を使用
- DMZネットワークの適切な経路設定
- 不要な経路の定期的な削除
運用上のベストプラクティス
ドキュメント化
- 設定理由と目的の記録
- 変更履歴の管理
- 障害時の切り戻し手順
テスト手順
- 本番適用前の検証環境でのテスト
- 段階的な設定変更
- 影響範囲の事前確認
監視とメンテナンス
- ルーティングテーブルの定期確認
- 不要ルートの削除
- パフォーマンスの監視
まとめ:Windowsでルーティングを自在にコントロールしよう
Windowsでのルーティング設定のポイント:
- 基本コマンド:
route add
で経路を追加、-p
で永続化 - 確認と管理:
route print
で確認、route delete
で削除 - 実践的活用:VPN環境、複数NIC、障害対策での使い分け
- 高度な管理:PowerShellでのスクリプト化と自動化
効果的な活用場面
ネットワーク管理者
- 複雑なネットワーク環境での経路制御
- 障害時の迂回路設定
- パフォーマンス最適化
システム管理者
- サーバーでの通信分離
- 監視・管理用ネットワークの分離
- セキュリティレベルに応じた経路設定
開発者・エンジニア
- 開発環境での接続先切り替え
- テスト用の一時的な経路設定
- 複数環境への接続管理
今日から始める3ステップ
- 基本操作をマスター:route add、route print、route deleteの使い方
- 実環境で練習:テスト環境で一時的な設定から始める
- 業務に応用:VPNや複数NIC環境での実践的な設定
コメント