更新:/etc/network/interfaces
使用中のため存在しません。netctl
はじめに。
2つのネットワークアダプタを使用して、ArchLinuxを実行するVirtualBoxインスタンスを設定しました。Adapter 1
(eth0
)はNAT(10.0.2.0/24
)に接続され、Adapter 2
(eth1
)はホスト専用ネットワーク(192.168.56.0/24
)に接続されています。私はこれらのアダプタにudev
古典的な名前を使用するための規則を使用しています(しかし名前にも問題があります)。eth0
eth1
enp***
ログインすると、次のメッセージが表示されます。
$ip ルーティング デフォルトでは192.168.56.1 dev eth1 デフォルトは 10.0.2.2 dev eth0 proto dhcp src 10.0.2.15 metric 202 を渡します。 10.0.2.0/24 dev eth0プロトタイプdhcp範囲リンクsrc 10.0.2.15メートル法202 192.168.56.0/24 dev eth1プロトタイプカーネルスコープリンクsrc 192.168.56.31
これにより
$ping google.com ping: google.com: 不明な名前またはサービス
私が理解しているように、これは192.168.56.1
(ホスト専用インターフェイス)NATインターフェイスよりも低いメトリックを追加するためです。
その後、手動で行う場合:
$sudo ip ルート削除のデフォルト $ip ルーティング デフォルトは 10.0.2.2 dev eth0 proto dhcp src 10.0.2.15 metric 202 を渡します。 10.0.2.0/24 dev eth0プロトタイプdhcp範囲リンクsrc 10.0.2.15メートル法202 192.168.56.0/24 dev eth1プロトタイプカーネルスコープリンクsrc 192.168.56.31
わかりました。
$ping google.com PING google.com (172.217.12.174) 56(84) バイトのデータ。 64 バイト from....1e100.net(172.217.12.174): icmp_seq=1 ttl=52 time=11.9 ms 64 バイト from....1e100.net(172.217.12.174): icmp_seq=2 ttl=52 time=11.7 ms ^C --- google.com ping統計--- 2つのデータパケットを送信する、2つのデータパケットを受信する、0%パケット損失、時間3ms rtt 最小/平均/最大/mdev = 11.698/11.782/11.867/0.137 ミリ秒
eth0
もしそうなら、アウトバウンドトラフィックが/(ホストネットワークのみ)ではなく/ 10.0.2.0/24
(ホストへのNATインターフェイス)を介してルーティングされるようにするにはどうすればよいですか?eth1
192.168.56.0/24
この質問はVirtualBoxとは何の関係もありません(メトリックを変更できるVirtualBox設定がある場合は問題ありません)。
次のいずれかを実行する方法があると確信しています。 1) systemd がパスを追加するのを防ぐdefault via 192.168.56.1 dev eth1
ため、または 2)default via 10.0.2.2 dev eth0
毎回デフォルトパスを手動で削除する必要がないように、より低いメトリックを持つパスを追加します。インスタンスを起動します。
まだ考慮していない別の解決策があるかもしれません。これまで、名前、固定IP、DHCPで遊ぶことは役に立ちませんでした。
ゲストオペレーティングシステムはArchLinuxです。
ベストアンサー1
/etc/network/interfaces
対応するインターフェイス行をファイルに追加します。
post-up route del default via 192.168.56.1 dev eth1
default via 192.168.56.1 dev eth1
インターフェイスが表示されると、パスが削除されます。