我一整天都在尝试在我的MacBook Pro(15 英寸,2011 年末)20.04
上运行 ubuntu 服务器,并且21.10
与 netplan 打架,我似乎无法拥有ens9
(Thunderbolt 2 网络适配器 - 似乎从这篇文章中可以正常工作:在 Ubuntu 20.04 上使用 Apple Thunderbolt 2 以太网适配器)ipv4
从 DHCP 获取。我到处阅读大量帖子,这似乎微不足道,但我仍然无法让它发挥作用:/
我/etc/netplan
目前看起来像这样:
network:
version: 2
renderer: networkd
ethernets:
ens9:
dhcp4: true
optional: true
但老实说,在这一点上,我已经忘记了我改变了多少次。我几乎尝试了所有我发现的所有可能排列的单词:ubuntu、server、20.04、21.10、dhcp、ipv4、-static、-NetworkManager、不工作、没有获得 IP、-ipv6、MacBook pro、ens9、网络计划,系统网络。
每当我ip a
只有ens9
一个ipv6
(由于某种原因,我没有ipv6
在我的网络中使用,也没有我的 DHCP 分配ipv6
地址,所以我不知道它来自哪里)没有路由表,也没有分配名称服务器,这让我怀疑是甚至没有尝试“dhcp 任何东西”。即使我添加dhcp6: false
了水力压裂ipv6
,但没有ipv4
?我一直保持tail -f /var/log/syslog
开放状态,没有任何有用的东西出现。
如果我运行dhclient -r ens9 && dhclient ens9
界面确实得到一个ipv4
并且网络开始工作(例如,这就是我在安装过程中让它工作的方式)。我可以很好地 ssh,即使有时网络挂起(但老实说,如果至少我可以让 DHCP 配置正常工作,这是次要的 ?)。
因此,即使我确实有一个我不想使用的可怕解决方法,我真的很想了解为什么默认的“规范”(双关语)方式对我不起作用,而且我目前没有选择去哪里敲门我的头。
我几乎打算重用一台旧机器来找点乐子,结果我完全感到沮丧?,这让我想起了为什么我不再使用 Linux 作为桌面操作系统。
更新:
- 测试
networkctl
这是运行数小时后的输出
链接:ens9 类型:以太操作:降级设置:配置
重新启动后,它看起来完全不同:
链接:ens9 类型:以太 操作:关闭 设置:托管
但我怀疑这是因为如果我删除了可选参数optional
netplan generate && netplan apply
我回到了初始状态:
链接:ens9 类型:以太操作:降级设置:配置
在停止主机和网络名称查找后重新启动没有可选的给我:
链接:ens9 类型:以太操作:降级设置:配置
如果我运行dhclient -r ens9 && dhclient ens9
它从degraded
到routable
我记得这台笔记本电脑还带有一个集成的以太网端口(我已经很久没有看到一个我什至不记得它们存在了?),所以我拉了 Thunderbolt 加密狗,将我的电缆直接连接到内置端口,使用新的接口名称更新了配置文件,以及何时以通常的速度生成、应用,甚至重新启动。结果:没有任何变化,以任何方式完全相同的行为。由此,我会说这不是硬件问题,而是软件问题。最大的一个是:有零日志(据我所知)解释了为什么
netplan
没有对 DHCP 客户端做任何需要做的事情。即使使用-d
开关或尝试 (netplan try
) 也会给出零信息。所以我认为在笔记本电脑上构建服务器可能不是最好的主意,所以我下载并尝试了 Ubuntu Desktop 21.10。相同的行为。
经过进一步调查,我在互联网上发现这可能是固件和/或内核模块的问题。
apt-get install b43-fwcutter firmware-b43-installer
然后我继续:modprobe b43
但没有任何改变,相同的行为和 DHCP 拒绝执行其工作,如果不手动刺激:(
背景:从 1994 年到 2004 年,当我切换到 OSX 时,Linux 一直是我的主要(也是唯一)操作系统。我一直在服务器上使用它,但是使用现代的“懒惰云平台和 docker”,我已经很长时间不用处理网络配置问题了,而且,完全公开,我今天刚刚发现了netplan
. 虽然我个人认为对于使用空格作为定义块的方法的语言来说这是一个糟糕的选择,但我非常熟悉yaml
并且偏执地检查/计算那些讨厌的空格。