Существует ли командная строка способ показать стоящий исходящим образом IP-адрес для моей машины?

Существует ли командная строка способ показать стоящий исходящим образом IP-адрес для моей машины?

3
задан 03.11.2009, 17:03

2 ответа

Вы могли соединить сценарий, который называет whatismyip.com или подобный и возвращает интересную часть (хотя таким веб-сайтам не могли бы понравиться Вы делающий это). Обычно Вы оказываетесь перед необходимостью спрашивать кого-то еще (другой компьютер), каков Ваш IP, так как Ваш компьютер не знает. Вы могли также возможно спросить свой маршрутизатор, но парсинг, вероятно, будет более трудным.

Ваш компьютер не знает, что это - внешний IP-адрес, потому что маршрутизатор использует NAT*. Пакет, оставляя Ваш компьютер имеет от: [Ваш внутренний IP], но искажения маршрутизатора, что в от: [Внешний IP Вашего маршрутизатора] и отправляет его на Интернет. Маршрутизатор затем не искажает (или переискажения) к: поле на возвращенных пакетах и вперед них к Вашему компьютеру. **

Можно получить почти чистый вывод от:

wget -q -O - checkip.dyndns.org

*Преобразование сетевых адресов.

** Это - только ручное-wavey описание того, как NAT работает.

7
ответ дан 07.12.2019, 22:54

Можно получить его от различных веб-сайтов там в мире, как checkip.dyndns.org. После того как у Вас есть сайт, который говорит Вам Ваш IP-адрес, не должно быть слишком трудно использовать завихрение для выборки страницы и awk для парсинга его.

curl http://checkip.dyndns.org/ 2> /dev/null | ruby -pe '$_=$_.scan(/\d+\.\d+\.\d+\.\d+/)'
4
ответ дан 07.12.2019, 22:54

Теги

Похожие вопросы