以太网端口上的 DHCP 服务器,保持 WiFi 与互联网的连接

以太网端口上的 DHCP 服务器,保持 WiFi 与互联网的连接

最初说明,我正在使用最新的 Mint,但我更喜欢通用(Ubuntu/Debian 甚至更广泛的)解决方案,可能也适用于无头 CLI。虽然我知道这可能是不可能的。

我有一个设备需要外部分配 IP(不能内部配置为静态)。当我将它连接到路由器时,一切正常,我可以通信PC<-->router<-->device。但是,现在我需要建立直接连接,即PC<-->device(设备不需要互联网访问,只需与 PC 通信)。我还希望能够继续通过 PC 上的 WiFi 访问互联网。

我尝试过的:

使用 dnsmasq 设置 DHCP 服务器:

no-resolv
no-hosts
no-daemon
bogus-priv
 
interface=enp8s0
port=0
dhcp-range=192.168.88.10,static,infinite
listen-address=127.0.0.1
dhcp-host=<devicemacaddr>,device,192.168.88.67
dhcp-leasefile="storage.leases"
  1. 工作正常,除了我必须手动添加一个接口/etc/networking/(因为否则 dnsmasq 会抱怨它不存在):
auto enp8s0
iface enp8s0 inet static
address 192.168.88.1
gateway 192.168.88.254
netmask 255.255.255.0

然而,这一定是搞乱了一些 DNS 设置,因为从那时起我就无法连接到某些网站。

  1. 删除了接口文件,转到网络管理器 > 有线并添加新的配置文件,将 IPv4 和 v6 设置为仅 Link-Local。这样,我至少成功连接到设备一次,同时保持了我的互联网连接。然而,重启后它停止工作,dnsmasq 抱怨:no address range available for DHCP request via enp8s0

伟大的巫师们,请分享您的智慧。

答案1

IP 范围enp8s0192.168.88.0/24,您的路由器有 IP 192.168.88.1

互联网已连接到路由器?

您的接口定义不需要网关

auto enp8s0
iface enp8s0 inet static
address 192.168.88.1
netmask 255.255.255.0

没问题。请注意,此 IP 范围必须是唯一的,请勿在路由器的任何其他接口上重复使用它。您的 dnsmaq.conf 文件应如下所示

no-resolv
no-hosts
no-daemon
bogus-priv
 
interface=enp8s0
port=0

dhcp-range=192.168.88.10,static,infinite # should be fine 
# listen-address=127.0.0.1 # relevant for the gui disable after troubleshooting
dhcp-host=<devicemacaddr>,device,192.168.88.67
dhcp-leasefile="storage.leases"
dhcp-option=3, 192.168.88.1 # default router for Device 
dhcp-option=6,<YOUR DNS SERVER>   # optional 

连接至http://<ROUTER-IP>:8080以进行故障排除。

我最好的猜测是:

  • 您将能够再次使用 PC 访问互联网
  • 您将能够使用 PC 访问该设备
  • 设备本身可能无法访问互联网

玩得开心

相关内容