mac のルーティングテーブルの変更。
ルーティングテーブルの変更は、やり方は色々在るんだけど、コマンドからやるなら、route コマンドが一番便利かな。
mac のルーティングを自分でadd したり削除したり、操作したい。
- mac のルーティングテーブルの変更。
- 最初にルーティングの確認
- ルーティングの追加
- 指定したIPだけ別の経路を通したい。
- デフォルトGWを変えるには
- デフォルトゲートウェイの削除
- デフォルトゲートウェイの追加
- 2023-01-29 追記
- 関連記事
- 2019-03-26 追記
最初にルーティングの確認
netstat -nr
ルーティングを確認し、必要に応じてコマンドの結果を取得する
ルーティングの追加
10.0.1.0/24 のネットワークに対するパケットは192.168.95.100を経由する
sudo route add -net 10.0.1.0/24 192.168.95.100
ルーティングの削除
sudo route delete -net 10.0.1.0/24 192.168.95.100
実例
10.0.1.100 のホストに対するパケットは192.168.95.101を経由する
sudo route add -net 10.0.1.100 192.168.95.101 sudo route delete -net 10.0.1.100 192.168.95.101
指定したIPだけ別の経路を通したい。
指定したIPだけ、別のGWを通って出ていくように設定をしたいときもあります。 /32 で指定するのもありですね。
sudo route add 192.168.100.134/32 10.200.110.1
デフォルトGWを変えるには
デフォルトのゲートウェイを変える場合は次のようにすることも出来る。デフォルトゲートウェイを変えるのは、SSH-VPNなどでパケットをSSH先に向けたりするのに便利。
デフォルトゲートウェイの変更
基本的には、削除や追加ではなく、change
で変更する。
sudo route change default 172.16.10.1
デフォルトゲートウェイの削除
sudo route delete default 172.16.10.1
デフォルトゲートウェイの追加
上記コマンドで削除している場合は追加をする。
sudo route add default 172.16.10.1
忘れちゃいけないけど、デフォルトはすべてのルーティングテーブルにマッチしなかった時に持っていくところです。 本当に文字通り、DEFAULT なのです。
2023-01-29 追記
この記事を読む人は、Linuxでは出来るけど、BSDコマンドのMacではどうするか?を調べてることでしょう。
だったら、私の次の記事を参考に、mac のネットワークコマンドを linux iproute2 互換にしてしまう手段もいい選択肢だと思います。
macOSに Linux の ip ( iproute ) コマンドを入れてしまうという邪教 - それマグで!
関連記事
指定したルーティングテーブルがちゃんと機能しているか調べるコマンドについて。
ip コマンドでルーティングテーブルの逆引き(?)どのルートを通るか調べる - それマグで!
2019-03-26 追記
関連リンクを追記