Одноранговое соединение между двумя машинами *каждая* за двойным NAT

Одноранговое соединение между двумя машинами *каждая* за двойным NAT

Я в Австралии и использую KOGAN в качестве мобильного провайдера данных. Я мог бы использовать другого, но пока не знаю, решит ли это мою проблему.

Короче говоря, моя установка такова:

PC1 (AUDIO Transmitter):
IP 192.168.8.100
GW:192.168.8.1
4G modem 1:
LAN IP: 192.168.8.1
WAN IP: 10.230.208.90
WAN GW IP: 10.230.208.89

Если я проверю «whatsmyip» для ПК1, я получу 120.16.82.177 (динамический, меняется со временем)

PC2 (AUDIO receiver):
IP 192.168.1.50
GW:192.168.1.1
4G modem 2:
LAN IP: 192.168.1.1
WAN IP: 10.239.18.67
WAN GW IP: <not shown by my 4G modem ...>

Если я проверю «whatsmyip» для ПК2, я получу 120.16.32.42 (динамический, меняется со временем)

Итак, оба компьютера находятся за двойным NAT; пока все ясно.

Очевидно, что у меня нет прямого контроля над маршрутизаторами/брандмауэрами KOGAN (поставщика мобильных данных), а электронное письмо, отправленное на прошлой неделе, до сих пор осталось без ответа. Очевидно, что у меня есть полный контроль над моими собственными маршрутизаторами 4G, на которых я мог бы настроить переадресацию портов и т. д., но это не сработает, поскольку в маршрутизаторах KOGAN не будет PF.

Я наткнулся на PWNAT, который, похоже, способен установить прямую связь между ПК1 и ПК2.

Но я не могу решить, как именно мне следует использовать PWNAT в моих конкретных обстоятельствах.

Я пытаюсь запустить VLC на обеих машинах: одна будет отправлять аудиопоток UDP на другую, которая также будет получать его с помощью VLC.

На передающем ПК я бы запустил:

vlc music.mp3 :sout=#udp{dst=120.16.32.42:1234} :no-sout-all :sout-keep

на принимающей стороне, просто

vlc udp://@:1234

На данный момент, когда мои UDP-пакеты приходят на адрес 120.16.32.42:1234, они отбрасываются (я полагаю) и на этом история заканчивается.

Итак, как этого добиться?

Примечание: идея заключается в достижении минимально возможной задержки/задержки; поэтому я использую два 4G-модема с одним и тем же провайдером. Так что я буду использовать кратчайший доступный локальный маршрут.

решение1

Полагаю, вы пробовали использовать IP-адреса 10.0.0.0/8, но они не маршрутизируются внутри сети вашего интернет-провайдера?

Я никогда не пользовался PWNAT, но это выглядит как действительно гениальный инструмент. Похоже, команда, которую вы можете запустить, это...

Server side allowing anyone to proxy:
  ./pwnat -s
  vlc music.mp3 :rtp={sdp=rtsp://:1234/} :no-sout-all :sout-keep

Client wanting to connect:
  ./pwnat -c 21234 120.16.82.177 192.168.8.100 1234
  vlc rtsp://localhost:1234

Если исключить все варианты, то, по-моему, следующим лучшим вариантом будет установить VPN-сервер где-нибудь поблизости, у которого есть пригодный для использования публичный IP, и подключить обе машины к нему. Ваша задержка пострадает.

Связанный контент