Frage zu Wireguard

GeMa25

New member
Ich habe eine Frage zu Wireguard.
Ich habe Wireguard auf einem Raspberry Pi installiert. Netzwerkadresse 192.168.0.101

Als Port habe ich 64940 gewählt und den Port im Router freigeschaltet (UDP und TCP).
Meine Server.Conf
[Interface]
PrivateKey = ################# (Server private Key)
Address = 192.168.99.0/24
ListenPort = 64940
DNS = 1.1.1.1 1.0.0.1

# Client 1
[Peer]
PublicKey = ################# (Client 1 public Key)
AllowedIPs = 0.0.0.0/24

# Client 2
[Peer]
PublicKey = ################# (Client 2 public Key)
AllowedIPs = 0.0.0.0/24
Meine Client.Conf
** Client 1.conf **
[Interface]
PrivateKey = ################# (Client 1 private Key)
ListenPort = 64940
Address = 192.168.0.0/24
DNS = 1.1.1.1
MTU = 1420

[Peer]
PublicKey = ################# (Server public Key)
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = meine-ddns.de:64940
PersistentKeepalive = 30
Von extern kann ich den Raspberry nicht erreichen. Was habe ich falsch gemacht?
 
Zuletzt bearbeitet:
Wieso sind das zwei verschiedene Adressräume?
Server: 192.168.99.0/24
Client: 192.168.0.0/24

wenn doch der Pi 192.168.0.101 hat?

Server Config:
Code:
# Edit file content
[Interface]
Address = 192.168.0.101/24
SaveConfig = true
ListenPort = 64940
PrivateKey = <server private key>

# note - substitute eth0 in the following lines to match the Internet-facing interface
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

[Peer]
# client1
PublicKey = <Client public key>
AllowedIPs = 192.168.0.201/24

Client Config
Code:
# File content
[Interface]
Address = 192.168.0.201/24
PrivateKey = <client private key>
# DNS = 192.168.0.1

[Peer]
PublicKey = <server public key>
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = <VPN server IP>:64940

hätte ich jetzt erwartet.
 
Das war die Client Adresse beim Test. Wie die in der Praxis dann ist weis ich nicht. Deshalb habe ich alle Adressen zugelassen.
 
Moinsen,
ich nutze kein wireguard, daher nur rein theoretische Anmerkung:
das Transport Netzwerk sollte schon gleich sein bei Server und Client, wie sollen die da sonst etwas transportieren? Da hat @Stationary also schon nicht unrecht:
server im Transport Netz 192.168.0.0/24 > hier die .101 bei @Stationarys Beispiel...
client ebenso im 192.168.0.0/24 > hier die .201...aber eben beide im gleichen / selben Transportnetz.

Wenn du wirklich alles durch den Tunnel jagen willst, dann ist der Gebrauch von 0.0.0.0/0 okay....und dann muss auch dies (also 0.0.0.0/0 unter allen AllowedIPs eingetragen werden (sonst nix, ist ja auch unnötig, es ist ja bereits alles (!) erlaubt...). Wenn du nicht jedweden Traffic durchjagen willst, sondern nur bestimmte Geräte erreichen musst, dann eben mit einzelnen IPs, da dann aber auch auf die korrekte Netzgrößenangaben achten. So sollte dann unter Allowed IPs auf der serverconfig die Tunnel-Client-IP angegeben werden als einzelner Client (also im Beispiel: 192.168.0.201/32 (also NUR dieser Client). Sollten dann auch Geräte im Heimnetz erreichbar werden, dazu noch die Heim.Netz.IP.Bereich/24...(zb 192.168.5.0/24).

Schematisch also etwa:
Server (VPN Responder):
[Interface]
Address = <Interne_WG_Server_IP>
PrivateKey = <
Privater-Key-Server>
ListenPort = <UDP_Tunnelport>
[Peer]
PublicKey = <
Öffentlicher-Key-Client>
AllowedIPs = <Interne_WG_Client_IP/32, remote_IP_Netze>


Client (VPN Initiator):
[Interface]
Address = <Interne_WG_Client_IP>
PrivateKey = <
Privater-Key-Client>
(DNS = 192.168.x.y) --> Optional, nur wenn interner DNS erforderlich ist.

[Peer]
PublicKey = <Öffentlicher-Key-Server>
Endpoint = <Server_IP_FQDN>: <UDP_Tunnelport>
AllowedIPs = <Interne_WG_Server_IP/32>
PersistentkeepAlive = 25

DNS würde ich nur mitangeben, wenn du daheim einen zB werbeblockenden DNS Resolver (pihole / adguard) nutzt.
MTU würde ich auch weglassen, sollte heutzutage eigentlich alles ausgehandelt werden.
Angaben zu IPv6 (bei dir in der client-config enthalten mit ::0/0) kannste auch weglassen, wenn du gar kein v6 nutzt...
Wäre jedenfalls mein Input dazu. :)
 
Zuletzt bearbeitet:
Moinsen,

Wenn ich jemand den Zugang gebe, dann sollte dessen Adresse keine Rolle spielen.
Tut sie ja auch nicht (Einschränkung: solange es keine Überschneidung im IP Bereich gibt, also kluge Wahl beim Transportnetz, kein allerseits 192.168... sondern eher was "exotischeres" wie 10.0....).
Aber die IP des clients im Transportnetz selbst muss bekannt sein und passen. ;)
 
Ich gebs auf. Ich habe alles probiert auch ein Beispiel von Chat GPT.
Im Protokoll kommt immer die Meldung "Sending handshake initiation to peer 1 (externe-ip port)"
Die öffentliche IP wird richtig aufgelöst, aber der Server antwortet nicht.
Mal darüber schlafen, einen Liter Kaffee trinken und morgen nochmal testen.
 
Zuletzt bearbeitet:
Moinsen,
Nimm doch zu Beginn mal ne andere IP für den Server als die unsägliche .0...das soll so eigentlich nicht. Es gibt ja genug Alternativen in dem /24 Tunnel Netzwerk...;)
 
Ja - danke für den Tipp das teste ich und berichte. Jetzt futtere ich erst mal eine Tüte Chips gegen den Frust.
Danke für Eure Unterstützung 👋 bis morgen
 

Zurzeit aktive Besucher

Keine Mitglieder online.

Letzte Anleitungen

Statistik des Forums

Themen
6.783
Beiträge
65.385
Mitglieder
7.087
Neuestes Mitglied
Schumi24
Zurück
Oben