Când vă conectați la un server Wireguard de pe computerul dvs. Linux, apare o nouă interfață de rețea și tot traficul este transmis prin aceasta.
De obicei, pentru a conecta două interfețe împreună, ai configura cu ușurință o punte și ai conecta cele două interfețe două.
Cu toate acestea, Bridge-urile funcționează pe OSI Layer-2 (redirecționare cadre, care sunt direcționate către adrese MAC destinație), în timp ce Wireguard este un protocol Layer-3 (redirecționare pachete IP cu adrese IP destinație) (mai multe informatii).
Deci nu puteți conecta o interfață care funcționează pe L3 cu un bridge. Deci, aveți mai multe opțiuni:
- Utilizați un tunel VPN Layer-2 (cum ar fi L2TP+IPSec), cu problemele legate de configurare.
- Configurați Raspberry Pi ca un proxy Socks care direcționează traficul către Wireguard și face legătura între conexiunea completă la internet la dispozitivul conectat. Asta ar însemna trafic nu voi treceți prin VPN în mod implicit, ceea ce cel mai probabil nu este ceea ce doriți.
- Configurați Raspberry Pi ca router gateway și trimiteți pachetele IP către VPN:
Pentru a realiza acest lucru, veți avea nevoie de următoarele:
- Activați redirecționarea pachetelor pe clientul Pi (set
net.ipv4.ip_forward=1
în /etc/sysctl.conf
și actualizarea cu sysctl -p
- Configurați NAT pe clientul dvs. Pi între ambele interfețe. Aceasta ar trimite pachete din subrețeaua dvs. WG (de ex.
10.0.0.0/24
la noua subrețea de care se va ocupa Raspberry Pi și pe care o configurați în serverul DHCP (de ex. 10.10.0.0/24
).
Există mai multe moduri de a configura acest lucru, dar în 2022, folosind Ubuntu, ar trebui să dai Netplan o încercare, care vă permite să configurați toate aceste rețele cu un fișier YAML în mod intuitiv. Este un exemplu pe site-ul Netplan realizând exact acest lucru.
- Configurați raspberry pi ca server DHCP (astfel încât configurația IP este automată, iar dispozitivele fără configurare manuală au și trafic redirecționat): setați
routere opționale yourRaspberryPisWireguardIP;
în /etc/dhcp/dhcpd.conf
și alegeți o nouă subrețea pentru a atribui adrese IP clienților. ghid. Ar trebui să te pregătești să faci isc-dhcp-server
juca frumos cu Netplan
. Acest askubuntu raspuns face tocmai asta.
- Amintiți-vă că utilizarea Netplan va suprascrie probabil configurarea rețelei Wg-Quick, dar asta nu este o problemă. Doar adăugați configurația clientului dvs. WG pe același fișier Netplan din
tuneluri:
secțiune.
- Poate doriți să configurați un server DNS pe Raspberry Pi care să trimită către DNS-ul serverului dvs. WG pentru a evita scurgerile.
După cum probabil ați ghicit, cu această ultimă abordare, toți clienții conectați la raspberry dvs. ar părea să provină de la același IP client (al dvs. Raspberry) datorită NAT. Este posibil să puteți schimba acest lucru (configurarea serverului Wireguard IP-uri permise
poate fi setat la un interval, dar nu sunt sigur cum să realizez exact asta.
TLDR: Configurați tunelul client wg folosind Netplan. Înființat NAT folosind Netplan între interfața WG Client și iface-ul Ethernet secundar pe care intenționați să aveți clienții dvs. Configurați o Server DHCP pe pi pe o subrețea separată pentru clienții dvs. In esenta, construiește-ți propriul router.