web-dev-qa-db-ja.com

デフォルトゲートウェイを変更するにはどうすればよいですか?

現在、私はFreeBSD 9.1を実行しており、デフォルトゲートウェイはrc.conf

rc.conf

defaultrouter = "10.0.0.1"

しかし、システムを再起動せずにデフォルトゲートウェイを変更したいのですが、これは可能ですか?

20
WWW
route del default
route add default 1.2.3.4

ここで、1.2.3.4は新しいゲートウェイです。 ;を使用して同じ行に連結することもできます

編集:これはFreeBSDですnot Linux。コマンドが異なります。使用されているオペレーティングシステムを特定するために質問を注意深く読んでいない場合は、この回答を編集しないでください。

22
Chris S

ipまたはrouteコマンドを使用して、新しいデフォルトルートを追加し、古いルートを削除できます。以下のコマンドは、ゲートウェイを192.0.2.1に置き換えます。両方のコマンドペアは同じことを行います。 FreeBSDと他のOSは、おそらくわずかに異なるフォーマットの1つまたは両方のプログラムを持っている必要があります。 (FreeBSDにはrouteコマンドがあり、他の実装で使用されているgwキーワードを除外しています。)コマンドman ipまたはman routeは、特定の実装。

route add default 192.0.2.1
route del default 10.0.0.1

ip route add default via 192.0.2.1
ip route del default via 10.0.0.1 

これらのコマンドには複数の実装があるため、上記は実際の実装と一致しない場合があります。実装には、デフォルトゲートウェイの追加や削除などの一般的な使用例の例を含むmanページが必要です。 man routeman ipを試して、実装の動作を確認してください。

192.0.2.1を目的のデフォルトゲートウェイに変更します。デフォルトゲートウェイは、直接接続しているネットワークの1つにある必要があります。同様の方法でIPアドレスを変更できます。 ipは、IPv4およびIPv6ネットワーク上のIPアドレスとルーティングを表示および管理するために必要なほとんどすべてを行う新しいツールです。 ifconfigは、IPv4ネットワークでIPアドレスを構成するための古いツールです。

変更を永続的にするには、/etcのネットワーク構成ファイルを更新します。ファイルは、使用しているディストリビューションによって異なります。

これらのコマンドの少なくとも1つは、Unix派生のO/Sで使用できる必要があります。バージョンが異なると動作が若干異なる場合があります。 O/Sの詳細については、manページを確認してください。

16
BillThor

ここにワンライナーがあります:

ip route replace default via 1.2.3.4

どこ 1.2.3.4は新しいゲートウェイIPです

クレジット

9
artfulrobot

はい、ルートを変更してネットワークを再起動します。

/etc/rc.d/netif restart
3
johnshen64

とても簡単です。次のコマンドを入力するだけです。

$ route del 0/0
$ route add 0/0 192.168.0.1

「192.168.0.1」を任意のIPに置き換える必要があります。

変更を確認するには、「netstat」を使用できます。

$ netstat -r

このコマンドは、システムのルーティングテーブルを表示します。

1
ifm

あなたは試すことができます:

route add default gw 192.168.1.254 eth0
1
Chip Estrada

常に最初にnetstat -nrを使用して、ゲートウェイの内容と詳細を確認してください...0.0.0.0を参照してください。デフォルトのゲートウェイであり、なぜ最初にこのゲートウェイを変更するのか、このコマンドを使用するのではないかと考える必要があります。

route add default gw your ip eth0
0
user122562