Я в Австралии и использую 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, и подключить обе машины к нему. Ваша задержка пострадает.