Raspi4 WIFI-Access-Point Full-Tunnel直接进入Wireguard

问题描述

我运行了一个可用的 Wireguard 服务器,其中有 2 个用于站点站点 VPN 的 Wireguard 网关,以及一些偶尔使用的带有完整隧道的移动设备。我的站点网关之一是 RaspBerryPi4,我想提供一个直接连接到 Wireguard 服务器的 WIFI 接入点。此 RaspBerryPi 可以通过主服务器访问所有连接的子网,因此 Wireguard 设置正确。

我想使用我的 Raspi4 漫游世界并为我提供一个 WIFI 接入点,而任何连接到它的设备都直接路由到 Wireguard 并仅从那里出现到网络。我使用了 standard gateway setup provided 并且我的 WIFI 设备可以访问网络,但不能通过 Wireguard 进行隧道传输(目前)。

我真的找不到可以配置接入点绑定到的位置,dnsmasq、apdconf 或简单的 iptables 规则?

示例 IP

服务器:10.0.7.1,本地网络192.168.0.1/24

Raspi4:10.0.7.5,局域网192.168.6.5/24,WIFI 192.168.7.5/24

到目前为止我还没有成功,想法?

解决方法

开始工作,走了几步。

首先我将 RP4 上的 Wireguard-tunnel 更改为完整隧道,以前是拆分隧道,仅将其他本地 LAN 的 IP 路由到 wg0 接口。

工作完整隧道:

import firebase from '@firebase/app';
require('firebase/auth');
require('firebase/storage');
require("firebase/firestore");
require('firebase/functions');
require('firebase/database');

不工作的拆分隧道:

import firebase from 'firebase/app';
import 'firebase/database';
import 'firebase/storage';

开始尝试使用拆分隧道是愚蠢的。只有在wireguard 中映射的本地IP 被送入隧道,公共IP 直接出现在RP4 网络上。隧道按配置工作,但根本不是我想要的。

其次,iptables 是解决方案,其他一切都已正确设置。我不得不补充

AllowedIPs = 0.0.0.0/0

如果没有这些规则,我只能连接到 WIFI 而无法连接互联网

其余的设置与 this tutorial

中的几乎相同