我正在开发一个 busybox 映像,该映像将在隔离的虚拟环境中提供(以及其他服务) 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
都会用到。