DHCP 在新安装中不起作用

DHCP 在新安装中不起作用

新安装的 Kubuntu 12.04 无法从有线连接或任何无线连接获取 IP 地址。电缆/路由器端口/wifi 适配器/接入点都正常,可以与其他设备配合使用。我怀疑是 NIC 出现故障,但看到无线连接也无法通过 USB wifi 适配器工作,这排除了 NIC 可能是问题的根源。有线(板载 NIC)和无线(USB wifi 适配器)之间可能共享哪些其他硬件?我强调,使用 wifi 适配器我可以看到其他网络,但也无法从它们获取 IP 地址。使用 Kubuntu 11.10 LiveCD 进行测试得到相同的结果。

我注意到没有/etc/dhcp/dhclient.conf文件。

答案1

尝试sudo apt-get install isc-dhcp-client,它将安装 dhcp 客户端,尽管它不会解释为什么一开始没有安装它。这也假定您的问题是缺少所述客户端。

如果这不起作用,您应该考虑tcpdump在其中一个接口上使用命令,然后将结果发回此处。例如,sudo tcpdump -i eth0 -n应该会显示是否有任何流量通过该eth0接口,但您可能需要更正正确的接口。

由于 tcpdump 没有看到任何流量,请再次启动 tcpcommand,拔下 LAN 连接,等待几秒钟让计算机意识到您已拔下连接,然后重新插入并查看 tcpdump 输出。您的计算机应该会发出几个 DHCP 请求,并且在理想情况下,还会对这些查询做出响应。如果您什么都没看到,那么 DHCP 可能在错误的端口上请求地址,也许可以检查 DHCP 配置。如果在检查 DHCP 配置后,您确定 DHCP 正在正确的端口上请求地址,但您没有看到 tcpdump 的任何流量,请检查日志中是否存在与 DHCP 相关的任何错误或传输网络流量的错误。如果没有明显的问题,请在此处发布日志。

除此之外,我不知道还能做什么来诊断这个问题,也许您对硬件故障的怀疑是正确的,或者更不可能的是,驱动程序问题。

答案2

这个问题实际上是一系列问题:

1) -23 内核不支持此网卡。下载并安装 -26 内核有帮助。

2) 即使识别了 NIC,DHCP 仍存在问题。我在 openSuse 12.1 中也遇到了此硬件上的 DHCP 问题。设置静态 IP 地址可使机器联机,但没有 DNS。

3)为了让 DNS 正常工作,我续订了 DHCP 租约虽然我有一个静态 IP 地址。这听起来很蠢,但确实有效。简单地配置 Google 的公共 DNS 服务器并不能解决问题。

更糟糕的是,这款主板(华硕 P8H61-M LX) 没有 PCI 端口来插入 NIC 卡。华硕支持花了两天时间才回复我的 Linux 支持信,信中说“我们不支持 Linux”,而 Realtek 网站的Linux NIC 驱动程序不会从这六个镜像中的任何一个下载。它们使用 JavaScript 和 HTTP 访问控制来阻止人们通过 wget 下载我维护的真实服务器上的 tarball,所以我让一位同事从美国下载并通过电子邮件将驱动程序发送给我。然后我无法像我一样构建它们无法安装 gcc来自 Kubuntu DVD。

TL;DR:不要购买华硕主板,它们官方不支持 Linux。无论如何,不​​要购买没有 PCI 插槽的主板!

答案3

罪魁祸首:从以前的安装中复制文件“/etc/NetworkManager/”

问题:在新安装 Ubuntu 18.04 后,我的系统无法访问 IP 提供商提供的域名服务器 (DNS)。没有互联网连接。测试表明:提供如上所述的固定 DNS(例如 Google 的 8.8.8.8)可以建立互联网连接。与我的路由器的连接正常。路由器有 DNS。

几个小时后我发现:问题是我已将文件夹和子文件夹“/etc/NetworkManager”从旧安装复制到新安装中,因为我不想丢失所有已安装的 Wifi 连接。而这才是罪魁祸首。

解决方案:

A. 创建 /etc/NetworkManager 的新实例

  1. 我将 /etc/NetworkManager 重命名为 /etc/NetworkManager-1/。
  2. 我在家里重新安装了 Wifi 连接:网络名称、DHCP、密码。
  3. 结果:已创建 /etc/NetworkManager 的新实例。网络设置位于 /etc/NetworkManager/system-connections 中的文件中。现在一切正常!

B. 保存我的旧 Wifi 连接

  1. 我进入了 /etc/NetworkManager-1/ 下的旧(已重命名)NetworkManager 文件。文件夹 /etc/NetworkManager/system-connections 中包含了我在旧安装期间收集的所有连接(每个连接一个文件)。我将这些文件复制到剪贴板上。
  2. 我进入了 /etc/NetworkManager/system-connections,即新 NetworkManager 的同一文件夹。我获得了超级用户权限(“以系统管理员身份打开”),并将文件从剪贴板粘贴到此目录中。
  3. 我确保这些文件的所有者为“root”,权限为“600”,也就是说,所有者 root 可以读写,“组 root”和“其他”没有任何权限。就我而言,我必须更改权限。我打开终端并执行“sudo chmod 600 /etc/NetworkManager/system-connections/*”。

相关内容