通过以太网接口共享(wifi)互联网

通过以太网接口共享(wifi)互联网

我想连接两个设备,第一个是带有 ubuntu 的笔记本电脑(通过 wifi 连接到互联网),第二个是带有用 yocto 编译的 Linux 发行版的设备。这两个设备通过以太网电缆相互连接。我想要第二台设备上的互联网访问权限。在笔记本电脑上,我在 eth 接口上设置了静态 IP (192.168.3.254),并且我允许其他计算机使用 wifi 共享选项(对于 eth iface 也是如此)。在第二个设备中,我有以下等/网络/接口:

auto eth0
iface eth0 inet static
    address 192.168.3.22
    netmask 255.255.255.0
    network 192.168.3.0
    gateway 192.168.3.254

现在我可以启动 ssh 会话,但在第二台设备上唯一有效的 ping 是 192.168.3.254。我尝试 ping 8.8.8.8 或 1.1.1.1 但没有任何结果!我做错了什么?

答案1

有两种方法可以实现此目的。我不知道如何使用 GUI 来完成此操作,但这是 Ubuntu 上的标准方法。我将使用 Ubuntu 更高版本中附带的 UFW 和 netplan 工具作为示例。应在笔记本电脑上应用这些选项之一。

设置 NAT

您当前的设置不起作用的原因是您尚未设置 NAT 或网络地址转换。 NAT 负责在数据包进入和离开 NAT 网关时更改设备的 IP。无线路由器可以做到这一点,这就是设备拥有私有 IP 地址但仍然可以联系外部互联网的原因。

在 Ubuntu 中,由于内置 UFW 实用程序,设置 NAT 相当简单。在文件中/etc/ufw/sysctl.conf,注释掉该行net.ipv4.ip_forward=1

另外,将此行设置为/etc/default/ufw
DEFAULT_FORWARD_POLICY="ACCEPT"

现在,在文件中/etc/ufw/before.rules,在过滤规则之前添加以下行:

*nat
:POSTROUTING ACCEPT [0:0]

-A POSTROUTING -o <WIRELESS INTERFACE> -j MASQUERADE

COMMIT

更改<WIRELESS INTERFACE>为使用 找到的无线接口的名称ip link。完成这些更改后,重新启动 ufw 以应用更改sudo systemctl restart ufw,并通过运行来确保防火墙已启用sudo ufw enable

您当前在以太网接口上使用静态 IP 的配置将正常工作,并且您的辅助设备现在应该能够与外部联系。

设置桥

另一种选择是桥接以太网接口和无线接口,本质上将您的笔记本电脑变成网络交换机。如果您希望您的设备充当网络上的普通设备(就网络中的其他设备而言,这只是另一个无线客户端),这是最佳选择。您可以在文件/etc/netplan/01-netcfg.yaml/etc/netplan/50-cloud-init.yaml.无论你有哪个文件。此示例假设 DHCP 是从您的无线接口提供的。如果不是,你可以找到netplan的其他例子这里

network:
  version: 2
  renderer: networkd
  ethernets:
    <ETHERNET INTERFACE>:
      dhcp4: no
    <WIRELESS INTERFACE>:
      dhcp4: no
  bridges:
    br0:
      dhcp4: yes
      interfaces:
        - <ETHERNET INTERFACE>
        - <WIRELESS INTERFACE>

更改为您的辅助设备所连接的接口。

然后,运行sudo netplan apply以应用这些更改。如果运行ip a可以确认桥接口br0存在。现在,一旦您连接辅助设备并在该设备上启用 DHCP,它将从无线路由器获取 IP 地址,并像网络上的任何其他无线设备一样工作。

现在,桥接器是无线路由器的主要接口,这意味着,例如,如果您想在笔记本电脑上分配静态 IP,则需要在桥接器接口上分配它,而不是在无线接口上。

答案2

使用图形用户界面:

连接 > 有线连接 > IPv4 > 方法:共享到其他计算机

在此输入图像描述

更多信息:https://askubuntu.com/questions/359856/share-wireless-internet-connection-through-ethernet

答案3

通过以太网与 Manjaro 共享 Fedora wifi 互联网。侏儒在两侧。一切都可以在 GUI 中完成。在服务器端(此处为 Fedora)选择“共享到其他计算机”,在客户端选择“自动”。

即使它是自动阅读详细信息,以便您快速了解发生了什么。特别是网关或 DNS 就是服务器。

网络掩码未在 GUI 中显示,可以使用 获取ifconfig

如果出现问题,请检查pingthen ssh(允许在共享中远程登录,并且 manjaro 密码是 manjaro)。

如果 Mac 操作系统与 Linux 共享互联网,唯一要做的就是插上电缆。

相关内容