Команда для получения публичного IP-адреса маршрутизатора

У меня есть два компьютера 18.04.2 Ubuntu в моей домашней сети за одним и тем же маршрутизатором.

На каждом компьютере, если я запускаю эту команду:

curl -4 ifconfig.me

Я получаю одинаковый результат на каждой машине, динамический общедоступный IP-адрес IPv4, назначенный в данный момент маршрутизатору: XX.XX. XX.XX.

Затем на компьютере № 1 я запускаю VPN. Когда я затем запускаю ту же команду curl, я получаю другой результат, IP-адрес, который назначает VPN: YY.YY.YY.YY.

Вопрос: Какую команду терминала я запускаю на компьютере № 1, в то время как VPN активна на компьютере № 1, чтобы узнать назначенный в данный момент динамический общедоступный IP-адрес IPv4, который маршрутизатор использует для компьютера № 2 (который не является используя VPN)?

1
задан 29 June 2019 в 04:51

2 ответа

Вы могли бы спросить маршрутизатор.

Если он поддерживает UPnP, вы можете использовать upnpc из пакета miniupnpc

Попробуйте:

upnpc -s

или

upnpc -m enp1s0 -s

явно указать интерфейс для использования. Поэтому измените enp1s0 в соответствии с вашими настройками. Очевидно, что не используйте интерфейс tun0 или интерфейс, используемый VPN , если таковые имеются.

1
ответ дан 29 June 2019 в 04:51

Вопрос: Какую команду терминала я запускаю на компьютере № 1, в то время как VPN активна на компьютере № 1, чтобы узнать назначенный в данный момент динамический общедоступный IP-адрес IPv4, который маршрутизатор использует для компьютера № 2 (который не с использованием VPN)?

Общий ответ: вы не можете. А с более сложной конфигурацией вам не гарантируется, что общедоступный IP-адрес будет принадлежать вашему ближайшему маршрутизатору ( Carrier Grade NAT , несколько маршрутизаторов в частном IP-пространстве, прокси-серверы и т. Д.).

Вы можете добавить маршрут для ifconfig.me. Это несколько сложно, так как домен указывает как минимум на четыре IP-адреса, и, будучи размещенным в Google Cloud, я бы не стал делать ставку на то, что эти IP-адреса также являются полностью статичными.

Кроме того, в более сложных конфигурациях вы не можете быть уверены, что два разных компьютера будут выходить с одного и того же общедоступного IP-адреса.

Все вместе это пахнет как X-Y проблема . Почему вы хотите найти общедоступный IP-адрес компьютера № 2?

1
ответ дан 29 June 2019 в 04:51