Ich verwende einen OpenVPN-Server und möchte einem bestimmten Client eine statische IP zuweisen.
Dies ist meine server.conf. Ich denke, dies konfiguriert den Pool virtueller IPs so, dass er von 10.5.24.209 bis 10.5.24.223 reicht.
port 443
proto tcp
dev tun
sndbuf 0
rcvbuf 0
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA512
tls-auth ta.key 0
topology subnet
server 10.5.24.208 255.255.255.240
#This netmask should span IPs .208-.223.
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 168.xx.xx.xx"
keepalive 10 120
cipher AES-256-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
crl-verify crl.pem
client-to-client
client-config-dir ccd
Dies ist der Inhalt von /etc/openvpn/ccd/W7LocalVM
, wobei W7LocalVM der allgemeine Name meines Clients ist. Ich verstehe nicht ganz, was diese Anweisung bewirkt, aber ich denke, die erste IP sollte die gewünschte statische IP meines Clients sein, und die zweite IP sollte die IP meines Servers sein.
ifconfig-push 10.5.24.210 10.5.24.209
Wenn ich jedoch versuche, meinen Client mit dieser Serverkonfiguration zu verbinden, wird die folgende Fehlermeldung angezeigt:
Mon Aug 07 14:07:34 2017 Set TAP-Windows TUN subnet mode network/local/netmask = 10.5.24.208/10.5.24.210/10.5.24.209 [SUCCEEDED]
Mon Aug 07 14:07:34 2017 MANAGEMENT: Client disconnected
Mon Aug 07 14:07:34 2017 ERROR: --ip-win32 dynamic [offset] : offset is outside of --ifconfig subnet
Mon Aug 07 14:07:34 2017 Exiting due to fatal error
Ich dachte, die IP 10.5.24.210 würde sich innerhalb des auf der Serverseite definierten Subnetzes befinden, und ich verstehe nicht, warum ich diesen Fehler erhalte. Könnte mir jemand dabei helfen?
Antworten:
Dieses Problem entsteht, weil openvpn versucht, Ihre ifconfig-Optionen als IP gefolgt von einer Subnetzmaske zu analysieren.
Laut Manpage:
In Ihrem Servercode legen Sie Ihre Topologie auf fest
subnet
und übertragen sie dann mithilfe derserver
Anweisung an den Client .Gemäß der obigen Dokumentation müssen Sie "/ etc / openvpn / ccd / W7LocalVM" Folgendes hinzufügen, anstatt Ihre ifconfig mit "local", "remote" zu pushen:
Die letzte Zeile wird wahrscheinlich nicht benötigt, bleibt aber als Beispiel übrig, was ifconfig-push auf der Serverseite tun sollte, damit die Verbindung funktioniert.
quelle