Macのスタティックルート設定

Macのスタティックルート設定

Macのスタティックルート設定について説明します。ネットワーク機器だけではなく、PC等の端末についてもスタティックルートの設定が可能です。

Windowsのスタティックルート設定については下記を参照してください。

目次

ルーティングテーブルの確認

ルーティングテーブルを確認するには下記のコマンドを実行します。(“-f inet”オプションを指定して、IPv4のみを表示しています。)

netstat -rnf inet
Terminal[~]: netstat -rnf inet
Routing tables

Internet:
Destination        Gateway            Flags        Netif Expire
default            192.168.1.1        UGSc           en0
192.168.1.2/32     link#6             UCS            en0      !
192.168.1.2        XX:XX:XX:XX:XX:XX  UHLWI          lo0

routeコマンド(一時的な変更)

一時的な追加・変更の場合は、routeコマンドを利用して、スタティックルートの設定を行います。

routeコマンドで追加したスタティックルートは、再起動されると削除されます。再起動後も有効にするには、networksetupコマンドを利用してください。

スタティックルートの追加

スタティックルートを追加するには下記のコマンドを実行します。

sudo route add -net [宛先アドレス][宛先サブネットマスク(CIDR)] [ゲートウェイアドレス]

「宛先:172.16.1.0/24、ゲートウェイ:192.168.1.1」のスタティックルートを追加するには下記のコマンドを実行します。

sudo route add -net 172.16.1.0/24 192.168.1.1
Terminal[~]: sudo route add -net 172.16.1.0/24 192.168.1.1
add net 172.16.1.0: gateway 192.168.1.1

Terminal[~]: netstat -rnf inet
Routing tables

Internet:
Destination        Gateway            Flags        Netif Expire
default            192.168.1.1        UGSc           en0
172.16.1/24        192.168.1.1        UGSc           en0
192.168.1.2/32     link#6             UCS            en0      !
192.168.1.2        XX:XX:XX:XX:XX:XX  UHLWI          lo0

スタティックルートの変更

設定済みのスタティックルートを変更するには下記のコマンドを実行します。

sudo route change -net [宛先アドレス][宛先サブネットマスク(CIDR)] [ゲートウェイアドレス]

「宛先:172.16.1.0/24、ゲートウェイ:192.168.1.1」のスタティックルートを追加するには下記のコマンドを実行します。

sudo route change -net 172.16.1.0/24 192.168.1.254
Terminal[~]: sudo route change -net 172.16.1.0/24 192.168.1.254
change net 172.16.1.0: gateway 192.168.1.254

Terminal[~]: netstat -rnf inet
Routing tables

Internet:
Destination        Gateway            Flags        Netif Expire
default            192.168.1.1        UGSc           en0
172.16.1/24        192.168.1.254      UGSc           en0
192.168.1.2/32     link#6             UCS            en0      !
192.168.1.2        XX:XX:XX:XX:XX:XX  UHLWI          lo0

スタティックルートの削除

スタティックルートを削除するには下記のコマンドを実行します。

sudo route delete -net [宛先アドレス][宛先サブネットマスク(CIDR)]

「宛先:172.16.1.0/24」のスタティックルートを削除するには下記のコマンドを実行します。

sudo route delete -net 172.16.1.0/24
Terminal[~]: sudo route delete -net 172.16.1.0/24
delete net 172.16.1.0

Terminal[~]: netstat -rnf inet
Routing tables

Internet:
Destination        Gateway            Flags        Netif Expire
default            192.168.1.1        UGSc           en0
192.168.1.2/32     link#6             UCS            en0      !
192.168.1.2        XX:XX:XX:XX:XX:XX  UHLWI          lo0

networksetupコマンド(恒久的な変更)

恒久的な追加・変更の場合は、networksetupコマンドの”-setadditionalroutes”オプションを利用して、スタティックルートの設定を行います。

利用方法を確認します。

man networksetup
-setadditionalroutes networkservice [dest1 mask1 gate1] [dest2 mask2 gate2] ... [destN maskN gateN]
        Use this command to set the list of IPv4 additional routes configured for the service. Each route is specified as a (destination
        address, subnet mask, gateway address) tuple. Specifying no tuples clears the list of routes.

networkserviceの確認

networkserviceの指定が必要なため、下記のコマンドで確認します。(ネットワークインターフェースの確認です。)

networksetup -listallnetworkservices
Terminal[~]: networksetup -listallnetworkservices
An asterisk (*) denotes that a network service is disabled.
Wi-Fi
Bluetooth PAN
Thunderbolt Bridge

スタティックルートの追加(単一ルート)

スタティックルートを追加するには下記のコマンドを実行します。

networksetup -setadditionalroutes [networkservice] [宛先アドレス] [宛先サブネットマスク] [ゲートウェイアドレス]

「宛先:172.16.1.0/24、ゲートウェイ:192.168.1.1」のスタティックルートを追加するには下記のコマンドを実行します。

networksetup -setadditionalroutes Wi-Fi 172.16.1.0 255.255.255.0 192.168.1.1
Terminal[~]: networksetup -setadditionalroutes Wi-Fi 172.16.1.0 255.255.255.0 192.168.1.1

Terminal[~]: netstat -rnf inet
Routing tables

Internet:
Destination        Gateway            Flags        Netif Expire
default            192.168.1.1        UGSc           en0
172.16.1/24        192.168.1.1        UGSc           en0
192.168.1.2/32     link#6             UCS            en0      !
192.168.1.2        XX:XX:XX:XX:XX:XX  UHLWI          lo0

「networksetup -setadditionalroutes」については、最後に実行したコマンドのみ有効となります。2回目以降の実行は、それ以前の設定を上書きします。

スタティックルートの追加(複数ルート)

複数のスタティックルートを追加するには下記のコマンドを実行します。※コマンドの後ろに必要なルート分を追記していきます。

networksetup -setadditionalroutes [networkservice] [宛先アドレス1] [宛先サブネットマスク1] [ゲートウェイアドレス1] [宛先アドレス2] [宛先サブネットマスク2] [ゲートウェイアドレス2] [宛先アドレス3] [宛先サブネットマスク3] [ゲートウェイアドレス3] [宛先アドレス*] [宛先サブネットマスク*] [ゲートウェイアドレス*]

「宛先:172.16.1.0/24、ゲートウェイ:192.168.1.1」と「宛先:172.16.2.0/24、ゲートウェイ:192.168.1.2」と「宛先:172.16.3.0/24、ゲートウェイ:192.168.1.3」のスタティックルートを追加するには下記のコマンドを実行します。

networksetup -setadditionalroutes Wi-Fi 172.16.1.0 255.255.255.0 192.168.1.1 172.16.2.0 255.255.255.0 192.168.1.2 172.16.3.0 255.255.255.0 192.168.1.3
Terminal[~]: networksetup -setadditionalroutes Wi-Fi 172.16.1.0 255.255.255.0 192.168.1.1 172.16.2.0 255.255.255.0 192.168.1.2 172.16.3.0 255.255.255.0 192.168.1.3

Terminal[~]: netstat -rnf inet
Routing tables

Internet:
Destination        Gateway            Flags        Netif Expire
default            192.168.1.1        UGSc           en0
172.16.1/24        192.168.1.1        UGSc           en0
172.16.2/24        192.168.1.2        UGSc           en0
172.16.3/24        192.168.1.3        UGSc           en0
192.168.1.2/32     link#6             UCS            en0      !
192.168.1.2        XX:XX:XX:XX:XX:XX  UHLWI          lo0

スタティックルートの削除

networksetupコマンドで設定したスタティックルートを削除するには下記のコマンドを実行します。※引数無しで実行すると、これまで設定したスタティックルートが削除されます。

networksetup -setadditionalroutes [networkservice]

「networkservice:Wi-Fi」のスタティックルートを削除するには下記のコマンドを実行します。

networksetup -setadditionalroutes Wi-Fi
Terminal[~]: networksetup -setadditionalroutes Wi-Fi

Terminal[~]: netstat -rnf inet
Routing tables

Internet:
Destination        Gateway            Flags        Netif Expire
default            192.168.1.1        UGSc           en0
192.168.1.2/32     link#6             UCS            en0      !
192.168.1.2        XX:XX:XX:XX:XX:XX  UHLWI          lo0

以上で、Macのスタティックルート設定の説明は完了です!

  • URLをコピーしました!
  • URLをコピーしました!
目次