在做出任何更改之前,请阅读整个答案并理解它。

在做出任何更改之前,请阅读整个答案并理解它。

我有一台带 WiFi 卡和以太网端口的笔记本电脑。我还有一台只有以太网端口的台式机。

在 Lubuntu 16.04.1 上,我可以通过转到Edit connections( nm-connection-editor)、Wired Connection,然后在 IPv4 和 IPv6 选项卡中将下拉框设置为 ,为我的桌面提供互联网访问权限Shared with other computers。这很正常。我最近尝试使用 Lubuntu 18.10 进行全新安装,但我无法再共享我的互联网。然后我安装了 Lubuntu 18.04.1(我现在正在使用它),但它仍然不起作用。

当我用 Lubuntu 16.04.1 制作一个 live USB 并启动它时,它工作。

我使用的是标准以太网电缆,而不是交叉电缆。

安装后dnsmasq

wessel@Asp-One:~$ ps auxc | grep -i dns
nobody 7199 0.0 0.3 10156 3592 ? S 18:04 0:00 dnsmasq`

运行cat /etc/dnsmasq.conf | grep -v "#"没有任何反应(是的,我自己添加了管道)。

跑步ls -al /etc/resolv.conf给予

-rw-r--r-- 1 root root 69 jan 12 14:05 /etc/resolv.conf

跑步cat /etc/resolv.conf给予

# Generated by NetworkManager
search fritz.box
nameserver 127.0.0.53

跑步ps auxc | grep -i resolv给予

systemd+  9415  0.0  0.1  10652  1760 ?        Ss   jan11   0:00 systemd-resolve

安装后net-toolsifconfig运行

enp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.42.0.1  netmask 255.255.255.0  broadcast 10.42.0.255
        inet6 fe80::8ecf:c89a:c895:6866  prefixlen 64  scopeid 0x20<link>
        ether 70:5a:b6:fb:d3:46  txqueuelen 1000  (Ethernet)
        RX packets 1019  bytes 95909 (95.9 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1468  bytes 1690147 (1.6 MB)
        TX errors 0  dropped 0 overruns 0  carrier 11  collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 3888  bytes 323853 (323.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3888  bytes 323853 (323.8 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
wlp2s0b1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.178.66  netmask 255.255.255.0  broadcast 192.168.178.255
        inet6 2001:983:f1c:1:37c0:bfe1:39bf:f27  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::60ad:efe7:b5a0:b86b  prefixlen 64  scopeid 0x20<link>
        inet6 2001:983:f1c:1:30ef:b8f6:d3de:dbd5  prefixlen 64  scopeid 0x0<global>
        ether c4:46:19:21:58:61  txqueuelen 1000  (Ethernet)
        RX packets 186393  bytes 226214669 (226.2 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 63400  bytes 8820907 (8.8 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

桌面确实获得了 IPv4 和 IPv6 地址。

跑步cat /etc/NetworkManager/NetworkManager.conf给予

[main]
plugins=ifupdown,keyfile
[ifupdown]
managed=false
[device]
wifi.scan-rand-mac-address=no

答案1

在做出任何更改之前,请阅读整个答案并理解它。

DNS/DHCP 在 18.xx 中有点混乱。


我让你安装dnsmasq主要是因为它的 DHCP 服务器。可能需要进行一些配置/etc/dnsmasq.conf。你必须检查它是否正确识别你的以太网端口enp1s0,因为它目前可能设置为eth0

当然,在 Ubuntu 的最新版本中,他们想出了这种“更简单/更好”的命名通信端口的方法......在您的情况下......enp1s0wlp2s0b1。不太方便用户使用。如果你想恢复到原来的样式名称eth0wlan0,您可以进行以下更改...

编辑/etc/default/grub并找到包含“quiet splash”的行,并将其更改为“quiet splash net.ifnames=0”,然后执行sudo update-grub, 和reboot


您的/etc/resolv.conf文件不正确。您有一个硬连线文件,它应该是指向两个位置之一的符号链接。

sudo mv /etc/resolv.conf /etc/resolv.conf.OLD# 重命名当前的 resolv.conf

在 dnsmasq 运行并执行 DNS 的情况下,它应该是这样的......

sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf# 创建一个新的符号链接

在 systemd-resolve 运行并执行 DNS 的情况下,它应该是这样的......

sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf# 创建一个新的符号链接


但有一个问题。当 dnsmasq 和 systemd-resolve 同时运行时,它们往往会互相干扰,DNS 解析会变得更加不稳定。为了解决这个问题,我们告诉 systemd-resolve 退出,让 dnsmasq 处理 DNS。

关于dnsmasqsystemd-resolved...

执行ps auxc | grep -i dnsps auxc | grep -i resolv并查找dnsmasqsystemd-resolved,如果两者都在运行,则需要systemd-resolved通过编辑/etc/systemd/resolved.conf和禁用的 DNS 部分......

改变:

#DNSStubListener=yes

到:

DNSStubListener=no

然后重新启动 systemd-resolve 和 dnsmasq,或者重新启动。


可能还需要编辑/etc/NetworkManager/NetworkManager.conf。编辑文件并添加一行dns=,如下所示...

[main]
plugins=ifupdown,keyfile
dns=dnsmasq (or dns=default would probably work also)
[ifupdown]
managed=false
[device]
wifi.scan-rand-mac-address=no

在两台计算机上,您应该能够执行以下两个命令以确保 DNS 解析正常工作...

host 8.8.8.8

host www.ebay.com


最后,您需要监视我之前提到的两个 resolv.conf 文件的内容。然后决定需要重新创建上述哪个符号链接。如果一切正常,其中一个 resolv.conf 可能应该包含 192.168.x.1(路由器中的 DNS 服务器地址)或 xxxx(其他外部 DNS 服务器的地址)。它们可能不应该包含 127.0.0.1 或 127.0.0.53。


注意:如果第二台计算机运行的是 18.xx 版本,则可能需要在该计算机上进行部分/全部更改。


如果这一切让你感到困惑,确实如此。如果需要,可以多问一些问题。

相关内容