GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

Centos – Wireguard leitet den Datenverkehr nicht vom Client zu anderen Servern im Netzwerk?

Ich habe die CentOS 7.6-Version und habe den Wireguard-VPN-Testserver installiert. Die gesamte Installation und Konfiguration ist ziemlich einfach, zumindest laut Dokumentation, also was ich getan habe, ich habe wireguard-tools, wireguard-dkms und linux-headers installiert

Der nächste Schritt war, dass ich einen privaten und öffentlichen Schlüssel des Servers generierte und die Konfiguration des Servers wie folgt schrieb:

[Interface]
Address = 10.7.0.1/24
ListenPort = 34777
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=

[Peer]
PublicKey  = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.2/32

[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.3/32

[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.4/32

[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.5/32

Von der Serverseite aus habe ich Port 34777 udp auf einer Firewall geöffnet und sysctl -w net.ipv4.ip_forward eingestellt (um die Weiterleitung zu aktivieren), da dieser Server den Datenverkehr vom Client an andere Server im Subnetz des VPN-Servers weiterleiten soll br /> Stellen wir uns nun vor, dass die öffentliche IP dieses Servers 11.11.11.11/23 ist

Auf der Client-Seite sieht die Konfiguration wie folgt aus:

[Interface]
Address = 10.7.0.4/24
PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=

[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx=
AllowedIPs = 10.7.0.1/32,11.11.11.0/23 (for having route to 11.11.11.0/23 subnet) or 0.0.0.0/0
Endpoint = 11.11.11.11:34777

jetzt bedeutet 0.0.0.0/0, dass ich den gesamten Datenverkehr an mein VPN weiterleite (es ist nicht obligatorisch), es kann ein Split-Tunnel sein…. Was ich nicht verstehe, wenn ich mich verbinde, kann ich die Schnittstelle des Servers 10.7.0.1 pingen, aber ich kann nichts vom Netzwerk 11.11.11.0/23 pingen.
Da das Netzwerk 11.11.11.0/23 öffentlich ist, es gibt kein NAT.
Außerdem verwende ich unter CentOS firewalld statt iptables.

Wie und warum kann ich das interne Netzwerk hinter der getunnelten Schnittstelle nicht sehen?

Bild wie das Setup aussieht:

P.S. Auf dem Bild befindet sich zwischen Host A und dem Wireguard-Server ein weiterer Linux-Router (ein Hauptrouter), also denken Sie bitte daran.

Akzeptierte Antwort:

Nach so vielen Versuchen und Scheitern und Brainstorming mit Wireguard-IRC-Kanal-Jungs, habe ich anscheinend vergessen, eine statische Route für 10.7.0.0/24 für jeden Server hinter Wireguard hinzuzufügen. Ping geht zum Server, kehrt aber nicht zurück, da der Server nicht weiß, wohin er diese Echo-Antwort senden soll:

ip route add 10.7.0.0/24 via 11.11.11.11 dev eth0 (main device for communication)

Für mich Problem gelöst 😉


Cent OS
  1. Upgrade auf CentOS 6.2 von CentOS 6.1 / CentOS 6.0

  2. Führen Sie ein Upgrade von CentOS 6.3 auf CentOS 6.4 durch

  3. CentOS – semanage command not found error – Die Lösung ist da!

  4. Kann die Netzwerkeinstellungen in Centos 7 nicht konfigurieren?

  5. Ich kann das Netzwerk von Nautilus aus nicht durchsuchen?

Der inoffizielle Weg zur Migration von CentOS 8 zu AlmaLinux

Client zum FreeIPA-Server unter CentOS 8 hinzufügen

Netzwerk-Fehlerbehebung über die Befehlszeile mit TShark

So ändern Sie den Netzwerkverbindungsmodus in CentOS/RHEL 6

So konfigurieren Sie den Ubuntu-DHCP-Client

Keine Netzwerkverbindung zum/vom Docker CE-Container unter CentOS 8