孤立した仮想環境で(他のサービスの中で)dhcpリレーを提供するビジボックスイメージを開発しています。私が受け取る設定ファイルには、クライアントインターフェイス(例:eth1)とサーバーアドレス(例:192.168.100.100)が含まれています。ただし、busybox dhcprelayの実装には、dhcpサーバーにアクセスできるインターフェイスも必要です。
# dhcprelay --help
BusyBox v1.22.1 (2016-11-12 03:36:30 MSK) multi-call binary.
Usage: dhcprelay CLIENT_IFACE[,CLIENT_IFACE2]... SERVER_IFACE [SERVER_IP]
Relay DHCP requests between clients and server
指定されたサーバーアドレスから適切なインターフェースを決定する最も簡単な方法は何ですか?
答え1
システムにこのip route
コマンドがあると、特定のIPに対してネットワークがコンピュータから取得するパスを見つけることができます。例えば
$ ip route get 8.8.8.8
8.8.8.8 via 192.168.0.254 dev p4p1 src 192.168.0.20
cache
この応答インターフェイスp4p1
とゲートウェイが192.168.0.254
使用されます。