Вопросы по протоколу ip в Линуксе

Модератор: Модераторы

Ответить
Janus
постоялец
Сообщения: 134
Зарегистрирован: 07.11.2005 16:06:49

Сообщение Janus »

Вопроса 2:

1. Как в Линуксе определить свой ip?

2. Как в Линуксе из имени host'а, заданного строкой типа 'www.zero.kanet.ru' получить ip адрес?

Спасибо.

P.S. Если есть кроссплатформенный способ, буду еще больше благодарен. Если нет, то и не надо, хотя бы для Линукса узнать, для win32 через winsock сделаю.

P.P.S. А для FreeBSD это будет также, как и для Линукса?
SergKam
постоялец
Сообщения: 251
Зарегистрирован: 16.11.2005 20:31:11
Откуда: Украина,Харьков

Сообщение SergKam »

1 Как в Линуксе определить свой ip?

Постановка вопроса не корректна. свой IP чего?
у меня на компе 4 интерфейса
eth0 192.168.1.1
eth1 215.63.48.251
ppp0 212.45.21.22
lo 127.0.0.1
все "свои"
так тебе какой?

2


function gethostbyaddr(_para1:Pchar; _para2:longint; _para3:longint):Phostent;cdecl;external libc_nlm name 'gethostbyaddr';
function gethostbyname(_para1:Pchar):Phostent;cdecl;external libc_nlm name 'gethostbyname';
function gethostname(_para1:Pchar; _para2:longint):longint;cdecl;external libc_nlm name 'gethostname';

это из юнита Libc.
подробности man gethostbyname

И в BSD должно быть это POSIX стандарт.
Janus
постоялец
Сообщения: 134
Зарегистрирован: 07.11.2005 16:06:49

Сообщение Janus »

А вот интересный вопрос, "какой ip"... Программа предназначена как для Ethernet, так и для Internet, в зависимости от настроек. Так что надо бы все ip и определить, а пользователь уж пускай сам и выбирает, какой использовать.

Вот 127.0.0.1 можно и не определять ;)

Насчет второго, спасибо за наводку, посмотрю.

P.S. Нашел программу на C, которая определяет свой интернет ip при помощи ioctl.
Ответить