Узнать внешний Ip-адрес

23.07.2010
14
0
#1
Доброго времени суток!
Подскажите пожалуйста мысль, каким образом на C++ можно реализовать механизм который будет узнавать внешний IP-адрес?
Допустим есть рабочая станция под управлением Linux, к ней подключен ADSL-модем, которому в свою очередь провайдер периодически присваивает разный IP, как узнать этот IP?

Вот реализация этого на Perl:
Код:
#!/usr/bin/perl
system("wget -q -O /tmp/myip http://www.myip.ru");
open(FILE, "/tmp/myip");
@page = <FILE>;
close FILE;
$ip = join('',@page);
$ip =~ /(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/;
$ip = $1;
print "$ip\n";
system("rm -f /tmp/myip");
Заранее спасибо!
 
E
#4
Это повезло. не факт что всегда свезет.

Добавлено: Есть стопудовый вариант когда всегда везет, надо?
 
23.07.2010
14
0
#5
Понятно, что скрипт тупо скачивает эту информацию с сайта, приводит ее в читабельный вид и выводит на экран, но это все же решения. На C++ подобного не реализовать?

Добавлено:
Это повезло. не факт что всегда свезет.

Добавлено: Есть стопудовый вариант когда всегда везет, надо?
Чего то не понял. Что значит везет?
 
E
#6
Везет это когда, то есть то нет.

Ваш скрипт, точно идет на сайт, только вопрос как он идет? а если через анонимные прокси? вот и не повезло.
Конечно, в локальном использовании оно годится, но это пока админу не приспичило. А тут и выходит тот самый стопудовый вариант, но вы его не хотите.
 
E
#8
Так всеж понятно, подойти к админу, дать ногой в челюсть, он и расскажет. А то скрипты программы ... проще надо быть проще.

Добавлено: VladimirSE Вы не обижайтесь, ваш скрипт можно написать и на си и на сю, только смысл сего действа в большинстве случаев равен нулю.
 
23.07.2010
14
0
#9
Хороший способ! :newconfus:
Ну вот если найду, какое нибудь достойное решение, обязательно с вами поделюсь! )