配置与特定 IP 地址的连接共享

配置与特定 IP 地址的连接共享

编辑-问题的更简洁版本:

使用连接共享时,我希望网络管理器使用 192.168.254 子网而不是 10.42.0 子网。这可能吗?

背景

我需要与通过以太网连接到笔记本电脑的 RasPi 共享我的无线互联网连接(在 Ubuntu 笔记本电脑上)。

通过将 eth0 配置为“共享给其他计算机”,一切工作正常(在许多地方都有记录,例如这里)。

使用此设置,连接到 RasPi 时我的 IP 地址是10.42.0.1。RasPi 会在该子网中获取另一个地址。一切正常!

由于 RasPi 的配置方式(与其他几个系统配合使用),我想eth0使用192.168.254.1。如果我将 eth0 配置为手动使用192.168.254.1手动 eth0 配置

RasPi 连接到我的笔记本电脑,我能够ssh进入。但是,虽然wlan0在运行 时我仍然看到有效配置ifconfig,但我无法访问互联网(大概是我的笔记本电脑试图使用eth0而不是wlan0)。

我正在寻找一种方法来:

a)wlan0手动配置 eth0 时仍可用于访问互联网

b)eth0配置“共享给其他计算机”时强制使用特定 IP 地址

我正在尝试为其他用户设置简单的说明,因此如果可能的话,我想避免任何手动iptables-type设置。

答案1

在 1.4.2、10.42.0.x 之前的版本中被硬编码到 NetworkManager 中。忘记基于 GUI 的解决方案,或者等到错误/功能请求修复。或者自己为我们所有人修复它。或者至少在启动板上投票解决错误,以便更快地解决问题。

升级到 Ubuntu 17.04(版本 1.4.4),或者使用以下命令托马斯·哈勒设置主机IP和类别。

nmcli connection modify $CONNECTION_ID +ipv4.addresses 192.168.5.1/24

其中$CONNECTION_ID,如果通过 找到nmcli connection show。然后,使用 进行验证nmcli connection show $CONNECTION_ID

答案2

您的配置存在根本问题。您的网关设置为与本地 IP 地址相同的 IP 地址。

图形:Raspi:连接到 10.0.0.5 Raspi:不在我的子网中,发送到网关 Raspi 再次接收请求并使用相同的消息进行响应。

您的问题有点令人困惑,但看起来您的笔记本电脑应该有一个像 192.168.254.2 这样的 IP

您还需要在笔记本电脑上设置网络地址转换。

我认为最好将两个接口桥接起来,这样 raspi 就可以有效地使用笔记本电脑的 wifi 进行通信。在笔记本电脑上执行以下操作:

sudo -i

这会让你生根。

apt-get update
apt-get install bridge-utils
brctl addbr br0
brctl addif br0 wlan0
brctl addif br0 eth0
ifconfig br0 10.42.0.1
ifconfig br0 netmask 255.0.0.0
ifconfig br0 up

Ctrl-D 退出 root 权限

在 raspi 上(连接到 eth0):

sudo ifconfig eth0 10.42.0.2
sudo ifconfig eth0 netmask 255.0.0.0
sudo ifconfig eth0 up
echo 'nameserver 8.8.8.8'>/etc/resolv.conf
ping 10.42.0.1
ping 8.8.8.8
ping fb.com

最后三个命令将显示您拥有的网络访问类型:

  • 如果只有第一个通过:本地网络
  • 如果达到第二关:互联网访问
  • 如果全部通过:使用 DNS 访问互联网

相关内容