ubuntuusers.de

Wireguard IP routing

Status: Ungelöst | Ubuntu-Version: Ubuntu 22.04 (Jammy Jellyfish)
Antworten |

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14382

goerdi schrieb:

Sie SSH Verbindung hat damit was zu tun dass sie von 192.168.66.3 kommt und nicht von 192.168.63.1

Das solltest Du schon etwas genauer erklären. Wo befinden sich die WG-Clients und der WG-Server (in welchem Subnetz)?

goerdi schrieb:

dann versuche ich mal zu verbinden (was zumindest gehen sollte da der port 51820 ja vom router auf die IP weitergeleitet wird.

BTW: Wenn es sich nur um das Subnetz deines Routers handelt, wird die Portweiterleitung (wegen NAT-Loopback) evtl. gar nicht in Anspruch genommen. Du machst eine WG-VPN-Verbindung in _deinem_ Subnetz und in diesem WG-VPN eine SSH-Verbindung ( unter Benutzung der IPs aus dem Subnetz und nicht mit IPs aus dem WG-VPN-Subnetz) zwischen 2 Clients in _deinem_ Subnetz?

goerdi

(Themenstarter)

Anmeldungsdatum:
18. Januar 2009

Beiträge: 150

Hi !

das Subnetz für die "normalen" Rechner ist 192.168.63.0/24 (Gateway 192.168.63.254) Der Wireguard Server ist die 192.168.63.1 und wg läuft drauf mit dem Subnet 192.168.66.0/24 eine VPN Verbindung kommt über das Internet rein mit portweiterleitung 51820 von 192.168.63.254 zu 192.168.63.1. im Subnetz gibt es mehrere andere "PCs" (mehr oder minder PCs) bei manchen lässt sich eine route eintragen (z.B. beim Gateway oder 192.168.63.90) und bei manchen eben nicht. ist jetzt Postup und ufw weg, dann kann ich Geräte mit route pingen , die anderen nicht... auch bekomme ich z.B. eine SSH Verbindung dahin und es wird auch die korrekte VPN Client IP angezeigt. Jetzt schalte ich ufw wieder ein ohne eine Regel aktiv zu haben, kann ich die Geräte mit eingetragener route (192.168.66.0/24 via 192.168.63.1) zwar pingen, bekomme aber keine SSH Verbindung mehr.

Gruss Gerd

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14382

goerdi schrieb:

Jetzt schalte ich ufw wieder ein ohne eine Regel aktiv zu haben, ...

OK, und wie sind jetzt (dort wo Du ufw wieder eingeschaltet hast) ohne aktive Regeln, die Ausgaben von:

sudo iptables -nvx -L
sudo iptables -nvx -L -t nat
ip r

?

goerdi

(Themenstarter)

Anmeldungsdatum:
18. Januar 2009

Beiträge: 150

Hi OK

ip r

default via 192.168.63.254 dev enp4s0 proto static 
192.168.63.0/24 dev enp4s0 proto kernel scope link src 192.168.63.1 
192.168.66.0/24 dev wg0 proto kernel scope link src 192.168.66.1 

sudo iptables -nvx -L -t nat

Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
    pkts      bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
    pkts      bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
    pkts      bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
    pkts      bytes target     prot opt in     out     source               destination     

sudo iptables -nvx -L

Chain INPUT (policy ACCEPT 13366 packets, 428528 bytes)
    pkts      bytes target     prot opt in     out     source               destination         
85391818 116275551564 ufw-before-logging-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
85391818 116275551564 ufw-before-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
 7615771 9546494957 ufw-after-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
 7335629 9402099196 ufw-after-logging-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
 7335629 9402099196 ufw-reject-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
 7335627 9402099132 ufw-track-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain FORWARD (policy DROP 261 packets, 17688 bytes)
    pkts      bytes target     prot opt in     out     source               destination         
    5298   582148 ufw-before-logging-forward  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    5298   582148 ufw-before-forward  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    1931   146516 ufw-after-forward  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    1931   146516 ufw-after-logging-forward  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    1931   146516 ufw-reject-forward  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
    1931   146516 ufw-track-forward  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT 118 packets, 3776 bytes)
    pkts      bytes target     prot opt in     out     source               destination         
51640767 38785191450 ufw-before-logging-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
51640767 38785191450 ufw-before-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
  204222 48969089 ufw-after-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
  204222 48969089 ufw-after-logging-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
  204222 48969089 ufw-reject-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
  204222 48969089 ufw-track-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ufw-after-forward (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-after-input (1 references)
    pkts      bytes target     prot opt in     out     source               destination         
     228    18792 ufw-skip-to-policy-input  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:137
     144    35021 ufw-skip-to-policy-input  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:138
       0        0 ufw-skip-to-policy-input  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:139
       0        0 ufw-skip-to-policy-input  tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:445
       3     1006 ufw-skip-to-policy-input  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:67
       0        0 ufw-skip-to-policy-input  udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:68
   13554  7129792 ufw-skip-to-policy-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0            ADDRTYPE match dst-type BROADCAST

Chain ufw-after-logging-forward (1 references)
    pkts      bytes target     prot opt in     out     source               destination         
      45     3064 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0            limit: avg 3/min burst 10 LOG flags 0 level 4 prefix "[UFW BLOCK] "

Chain ufw-after-logging-input (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-after-logging-output (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-after-output (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-before-forward (1 references)
    pkts      bytes target     prot opt in     out     source               destination         
      52    14768 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
       0        0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 3
       0        0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 11
       0        0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 12
      39    11076 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 8
     262    17740 ufw-user-forward  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ufw-before-input (1 references)
    pkts      bytes target     prot opt in     out     source               destination         
  245004 183162959 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
 7328629 9578411922 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
      10      520 ufw-logging-deny  all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID
      10      520 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID
       0        0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 3
       0        0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 11
       0        0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 12
    1318   109872 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0            icmptype 8
       0        0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp spt:67 dpt:68
   33349  9340750 ufw-not-local  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
      16     2323 ACCEPT     udp  --  *      *       0.0.0.0/0            224.0.0.251          udp dpt:5353
    4832  1555027 ACCEPT     udp  --  *      *       0.0.0.0/0            239.255.255.250      udp dpt:1900
   28501  7783400 ufw-user-input  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ufw-before-logging-forward (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-before-logging-input (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-before-logging-output (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-before-output (1 references)
    pkts      bytes target     prot opt in     out     source               destination         
  245004 183162959 ACCEPT     all  --  *      lo      0.0.0.0/0            0.0.0.0/0           
 4178829 459310472 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
    6021  1001372 ufw-user-output  all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ufw-logging-allow (0 references)
    pkts      bytes target     prot opt in     out     source               destination         
       0        0 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0            limit: avg 3/min burst 10 LOG flags 0 level 4 prefix "[UFW ALLOW] "

Chain ufw-logging-deny (2 references)
    pkts      bytes target     prot opt in     out     source               destination         
      10      520 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate INVALID limit: avg 3/min burst 10
       0        0 LOG        all  --  *      *       0.0.0.0/0            0.0.0.0/0            limit: avg 3/min burst 10 LOG flags 0 level 4 prefix "[UFW BLOCK] "

Chain ufw-not-local (1 references)
    pkts      bytes target     prot opt in     out     source               destination         
    1150    83181 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ADDRTYPE match dst-type LOCAL
   18354  2080518 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ADDRTYPE match dst-type MULTICAST
   13845  7177051 RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0            ADDRTYPE match dst-type BROADCAST
       0        0 ufw-logging-deny  all  --  *      *       0.0.0.0/0            0.0.0.0/0            limit: avg 3/min burst 10
       0        0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ufw-reject-forward (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-reject-input (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-reject-output (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-skip-to-policy-forward (0 references)
    pkts      bytes target     prot opt in     out     source               destination         
       0        0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ufw-skip-to-policy-input (7 references)
    pkts      bytes target     prot opt in     out     source               destination         
   13929  7184611 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ufw-skip-to-policy-output (0 references)
    pkts      bytes target     prot opt in     out     source               destination         
       0        0 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ufw-track-forward (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-track-input (1 references)
    pkts      bytes target     prot opt in     out     source               destination         
     567    33428 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate NEW
     638   136773 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate NEW

Chain ufw-track-output (1 references)
    pkts      bytes target     prot opt in     out     source               destination         
     738    44240 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate NEW
    5165   953356 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            ctstate NEW

Chain ufw-user-forward (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-user-input (1 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-user-limit (0 references)
    pkts      bytes target     prot opt in     out     source               destination         
       0        0 LOG        all  --  *      *       0.0.0.0/0            0.0.0Code.0/0            limit: avg 3/min burst 5 LOG flags 0 level 4 prefix "[UFW LIMIT BLOCK] "
       0        0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable

Chain ufw-user-limit-accept (0 references)
    pkts      bytes target     prot opt in     out     source               destination         
       0        0 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Chain ufw-user-logging-forward (0 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-user-logging-input (0 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-user-logging-output (0 references)
    pkts      bytes target     prot opt in     out     source               destination         

Chain ufw-user-output (1 references)
    pkts      bytes target     prot opt in     out     source               destination  

Ich denke mal das hat auch was damit zu tun was in /etc/default/ufw gesetzt ist..... das ist eigentlich standart geblieben ausser das ich ipV6 abgeschaltet hab

Ciao Gerd

goerdi

(Themenstarter)

Anmeldungsdatum:
18. Januar 2009

Beiträge: 150

Hi !

Ich bin schon etwas weiter . Nachdem ich in /etc/default/ufw DEFAULT_FORWARD_POLICY="DROP" auf DEFAULT_FORWARD_POLICY="ACCEPT" umgestellt habe, funktionieren auch SSH verbindungen und pings , aber nur auf Geräte wo ich die route eingetragen habe. Alle anderen reagieren nicht mal auf Pings.

Ciao Gerd

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14382

goerdi schrieb:

..., funktionieren auch SSH verbindungen und pings , aber nur auf Geräte wo ich die route eingetragen habe.

Welche route hast Du eingetragen?
Poste mal die Ausgaben von:

ip r g <Ziel-IP-Adresse>

von Geräten mit und ohne eingetragene route.

goerdi

(Themenstarter)

Anmeldungsdatum:
18. Januar 2009

Beiträge: 150

Hi !

hier mit eingetragener route:

192.168.66.3 via 192.168.63.1 dev eno1 src 192.168.63.90 uid 1000 cache

Aber auf Geräten ohne.... da komm ich net per SSH drauf... das sind u.a. ESP32 devices , wo ich was eintragen konnte hab ich das gemacht.

Gruss Gerd

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14382

goerdi schrieb:

hier mit eingetragener route:

192.168.66.3 via 192.168.63.1 dev eno1 src 192.168.63.90 uid 1000 cache

Das ist jetzt ein Gerät mit der IP-Adresse 192.168.63.90.
Eingegeben hast Du:

ip r g 192.168.66.3

Poste jetzt mal genau von diesem Gerät (mit der IP 192.168.63.90), die Ausgaben von:

ip r
ip a

goerdi

(Themenstarter)

Anmeldungsdatum:
18. Januar 2009

Beiträge: 150

Hi !

gerd@smarthome:~$ ip r
default via 192.168.63.254 dev eno1 proto static 
192.168.63.0/24 dev eno1 proto kernel scope link src 192.168.63.90 
192.168.66.0/24 via 192.168.63.1 dev eno1 proto static 
gerd@smarthome:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether b8:ae:ed:eb:dc:52 brd ff:ff:ff:ff:ff:ff
    altname enp0s31f6
    inet 192.168.63.90/24 brd 192.168.63.255 scope global eno1
       valid_lft forever preferred_lft forever
    inet6 fe80::baae:edff:feeb:dc52/64 scope link 
       valid_lft forever preferred_lft forever

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14382

goerdi schrieb:

gerd@smarthome:~$ ip r
default via 192.168.63.254 dev eno1 proto static 
192.168.63.0/24 dev eno1 proto kernel scope link src 192.168.63.90 
192.168.66.0/24 via 192.168.63.1 dev eno1 proto static 

Dieses Gerät ist ja auch kein WireGuard-Client (... weil wireguard auf diesem Gerät nicht konfiguriert ist). Du routest die Datenpakete in das bzw. über das WG-VPN, mit Hilfe eines VPN-gateway (192.168.63.1).
BTW: Kennst Du noch ein Betriebssystem auf dem bzw. mit dem man WireGuard z. Zt. nicht benutzen kann?

goerdi

(Themenstarter)

Anmeldungsdatum:
18. Januar 2009

Beiträge: 150

Hi !

Ich versteh aktuell überhaupt nix mehr.... das Gerät funktioniert ja (das ist eine Maschine im "normalen" Netz) dort kann ich ein routing eintragen und ping ,ssh etc.pp funktioniert (von und zu der Maschine) . Nehme ich jetzt meinen OpenDTU (ESP32) da kann ich nirgends ein routing für 192.168.66.0/24 hinterlegen. Eingetragen ist dieses Routing auch im Gateway (192.168.63.254) Die OpenDTU (ESP32) hat die IP 192.168.63.130, die kann ich vom Wireguard client weder pingen noch per http erreichen.

Gruss Gerd

lubux

Anmeldungsdatum:
21. November 2012

Beiträge: 14382

goerdi schrieb:

Ich versteh aktuell überhaupt nix mehr.... das Gerät funktioniert ja (das ist eine Maschine im "normalen" Netz) dort kann ich ein routing eintragen und ping ,ssh etc.pp funktioniert (von und zu der Maschine) .

Ja, das funktioniert schon. Als ich noch OpenVPN benutzt habe, habe ich das auch so gemacht. Mit WireGuard, habe ich auf _jedem Gerät_ wireguard konfiguriert.

goerdi schrieb:

Nehme ich jetzt meinen OpenDTU (ESP32) da kann ich nirgends ein routing für 192.168.66.0/24 hinterlegen. Eingetragen ist dieses Routing auch im Gateway (192.168.63.254) Die OpenDTU (ESP32) hat die IP 192.168.63.130, die kann ich vom Wireguard client weder pingen noch per http erreichen.

Bei OpenDTU (ESP32) kann ich dir nicht helfen, weil ich das nicht kenne.

goerdi

(Themenstarter)

Anmeldungsdatum:
18. Januar 2009

Beiträge: 150

Hi !

Es geht hier doch rein um das routen der IPs

Ciao Gerd

encbladexp Team-Icon

Ehemaliger
Avatar von encbladexp

Anmeldungsdatum:
16. Februar 2007

Beiträge: 17525

Ich bin hier dann mal weg, das ist mir zu wenig strukturiert.

goerdi

(Themenstarter)

Anmeldungsdatum:
18. Januar 2009

Beiträge: 150

Hi !

Welche Struktur hättest du denn gerne ?

Router 192.168.63.254/24 (internes Netz) route 192.168.66.0/24 auf 192.168.63.1 eingetragen
Wireguard Server 192.168.63.1/24 (wg0 192.168.66.1/24)
Wireguard client 192.168.66.3/24
Teilnehmer im Netz A 192.168.63.90/24 (route 192.168.66.0/24 auf 192.168.63.1 eingetragen)
Teilnehmer im Netz B 192.168.63.130/24 (ohne Möglichkeit eine Route einzutragen)
Ufw aktiv mit allen Optionen  DEFAULT_INPUT/OUTPUT/FORWARD auf ACCEPT

Ping und z.B. SSH auf router geht.

Ping und z.B. SSH auf Teilnehmer A geht.

Ping und http auf Teilnehmer B geht nicht (keine SSH Server)

Die Frage ist bei allen Devices wo ich die Route eingetragen haben gehen die Dienste vom Wireguard client, wo es nicht eingetragen ist geht es nicht (obwohl am Gateway ja die route eingetragen ist.)

Gruss Gerd