Mój ISP oferuje lite z dwoma stosami. Co oznacza, że mam tylko w pełni użyteczny adres IPv6. Połączenia IPv4 są kierowane przez NAT klasy operatorskiej. Chciałbym skonfigurować serwer openVPN w mojej sieci domowej i połączyć się z nim. Ale mój dostawca usług komórkowych nie obsługuje IPv6 (używając iOS).
Mam wiele serwerów w Internecie z prawdziwą obsługą podwójnego stosu. Czy istnieje jakiś sposób na połączenie się z moim serwerem openvpn przy użyciu tych składników? Czytałem o przekierowaniu portów ssh: czy byłoby to rozwiązanie? Czy jest to zbyt duże obciążenie dla połączenia?
Odpowiedzi:
Jak już odkryłeś, nie możesz połączyć się bezpośrednio z telefonu komórkowego (który ma tylko łączność IPv4) z siecią domową (która nie jest osiągalna przez IPv4 z powodu CG-NAT). Możesz rzeczywiście „przeskoczyć” przez dobrze podłączony host, aby mediować między dwoma urządzeniami. To nieco komplikuje konfigurację sieci, czyniąc rozwiązywanie problemów o wiele bardziej ... trudnym.
Podstawową ideą jest skonfigurowanie jednego z dobrze połączonych serwerów, aby działał jako stacja przekazująca: powinien akceptować połączenia TCP z telefonu komórkowego przez IPv4 i przekazywać je do serwera domowego przez IPv6. (Możesz to również skonfigurować za pomocą UDP, ale jest to nawet bardziej skomplikowane, ponieważ nie wymaga połączenia)
Jednym z narzędzi, które to robi, jest
socat
:Spowoduje to nasłuchanie na twoim serwerze na porcie 1194 (domyślny port OpenVPN, zmiana na pakiet twoich życzeń) i przekieruje każde połączenie na podany adres IPv6 (lub nazwę DNS) na tym samym porcie (ponownie, zmień na pakiet swoich życzeń) . Ta
fork
opcja instruuje socat, aby przekazywał nowe połączenia po pierwszym.źródło