我的 nvidia TK1 上的 Ubuntu 无法使用 Windows 机器作为网关 ping 外部本地网络

我的 nvidia TK1 上的 Ubuntu 无法使用 Windows 机器作为网关 ping 外部本地网络

这是第一条消息,感谢您的帮助。我有一台运行 14.04.1 LTS(GNU/Linux 3.10.40-ga7da876 armv7l)的 Nvidia TK1,我用交叉电缆将它连接到运行 Windows 10 的笔记本电脑。我正确地在两台计算机上设置了网卡,Windows 机器的网卡为 192.168.1.2,Ubuntu 机器的网卡为 192.168.1.1。这两台机器可以互相 ping 通,Ubuntu 机器可以 ping Windows 机器的无线网卡(网关),其地址为 192.168.43.251,但无法 ping 通其他任何东西,包括 Windows 机器的网关 192.168.43.1。Windows 机器的路由表如下所示:IPv4 路由表

===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0     192.168.43.1   192.168.43.251     55
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    331
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    331
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    331
      192.168.1.0    255.255.255.0         On-link       192.168.1.2    291
      192.168.1.2  255.255.255.255         On-link       192.168.1.2    291
    192.168.1.255  255.255.255.255         On-link       192.168.1.2    291
     192.168.43.0    255.255.255.0         On-link    192.168.43.251    311
   192.168.43.251  255.255.255.255         On-link    192.168.43.251    311
   192.168.43.255  255.255.255.255         On-link    192.168.43.251    311
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    331
        224.0.0.0        240.0.0.0         On-link       192.168.1.2    291
        224.0.0.0        240.0.0.0         On-link    192.168.43.251    311
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    331
  255.255.255.255  255.255.255.255         On-link       192.168.1.2    291
  255.255.255.255  255.255.255.255         On-link    192.168.43.251    311
===========================================================================

Ubuntu 机器看起来像这样:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.2     0.0.0.0         UG    0      0        0 eth0
192.168.1.0     *               255.255.255.0   U     1      0        0 eth0
ubuntu@tegra-ubuntu:~$

有人知道如何解决这个问题吗?我尝试了很多次使用路由添加命令,但大多数时候我甚至无法成功添加一条路由。这非常令人沮丧。如果有人知道如何解决这个问题并允许我的 ubuntu 机器共享 windows 机器的互联网连接,我将不胜感激。Ivan

答案1

我认为这是路由问题或 NAT 问题,或者两者兼而有之。

从 Linux 机器到 Windows 的数据包路由设置看起来不错。但您在描述中没有提到第三个设备,即 IP 为 192.168.43.1 的 Internet 网关。它可能是一个小型 Internet 路由器。路由器不知道您用于 Linux 和 Windows 之间通信的 192.168.1.0/24 网络。它无法将数据包发送到 Linux 机器地址 192.198.1.1,因为网络 192.168.1.0/24 不在其路由表中。

步骤1

打开路由器管理,转到网络/路由部分并添加 Linux 机器网络的项目:

192.168.1.0  mask 255.255.255.0 via 192.168.43.251

由于我不知道您的路由器类型,因此我无法更准确地描述它。

第2步

在 Windows 机器上启用 IP 路由。需要管理员操作。默认情况下未启用!

步骤3(可选,如果仍然无法连接互联网):

检查路由器的 NAT 设置。一些更高级的路由器有关于 NAT 网络的设置。管理员可以选择哪些网络需要转换,哪些不需要。

诊断:

  • 在 Windows 机器上使用 Wireshark(2 个实例,两个接口上),并检查以 Windows 路由器角色通过 Windows 机器的通信。
  • 检查您的互联网路由器的日志。

相关内容