Zdravím,
zprovoznil jsem si OpenVPN server na VPS a klienta na Raspberry v domácí síti a na mobilu. V rámci VPN (10.8.0.0/24) vše funguje, z mobilu si prohlédnu dashboard v Grafaně na Raspi, v tcpdump na Raspi vidím komunikaci atd.
V domácí síti mám i nějaké IoT (192.168.100.0/24), ke kterým bych měl rád taky přístup z mobilu, ale do VPN je přidat nemůžu.
Fórum jsem prostudoval, ale řešení jsem nenašel, proto se ptám tady.
Předpokládám, že musím zajistit aby:
1) pakety z mobilu (10.8.0.3) s dotazem na 192.168.100.x, které přijdou na VPN server (10.8.0.1), odešly na Raspberry (10.8.0.2)
2) následně na Raspberry došlo k překladu z tun0 (10.8.0.x) na eth0 (192.168.100.x) a odpovědi zpět
Na VPS jsem zjistil, že všemu, co přijde z VPN a nemá cíl ve VPN, se změní source IP
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 400 38664 SNAT all -- * * 10.8.0.0/24 !10.8.0.0/24 to:89.185.xxx.yyy
Předpokládám, že bych to mohl vyřešit takto:
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 143 8700 RETURN all -- * * 10.8.0.0/24 192.168.100.0/24
2 400 38664 SNAT all -- * * 10.8.0.0/24 !10.8.0.0/24 to:89.185.xxx.yyy
Dál jsem se díval do routovací tabulky na VPS:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 89.185.xxx.1 0.0.0.0 UG 0 0 0 ens192
10.8.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0
89.185.xxx.0 0.0.0.0 255.255.255.0 U 0 0 0 ens192
Chyběla mi tam cesta k 192.168.100.0/24 přes tun0 na Raspi
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 89.185.xxx.1 0.0.0.0 UG 0 0 0 ens192
10.8.0.0 0.0.0.0 255.255.255.0 U 0 0 0 tun0
89.185.xxx.0 0.0.0.0 255.255.255.0 U 0 0 0 ens192
192.168.100.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0
V tento okamžik jsem si myslel, že na Raspi uvidím v tcpdump na tun0 ping request s odesílatelem 10.8.0.3 a cílem 192.168.100.200 ale bohužel ...
Je moje uvažování zcela zcestné? Nebo není a mám tam chybu?
Díky za odpovědi.