LINUX.ORG.RU
ФорумAdmin

ip адрес


0

0

как узнать ip адрес интерфейса не через ifconfig (busybox ifconfig не поддерживает выдачу информации об интерфейсах). Спасибо

anonymous

Посмотри в конфигах, cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 IPADDR=212.86.112.237 NETMASK=255.255.255.240 BROADCAST=212.86.112.239 ONBOOT=yes BOOTPROTO=static

zaz ★★★★
()

Посмотри в конфигах,
cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
IPADDR=212.86.112.237
NETMASK=255.255.255.240
BROADCAST=212.86.112.239
ONBOOT=yes
BOOTPROTO=static

zaz ★★★★
()
Ответ на: комментарий от zaz

Это прелэсно. Мы записали в конфиг статический адрес, применили скрипты, стандартные, и этот адрес установили. Вариант DHCP и не будет в этом конфиге адреса.

Ну, понятно, всё равно устанавливается адрес вызовом ifconfig, ну а адрес ему передаётся либо заданный нами, либо полученный через клиента dhcp. В любом случае в этот момент (поднятия интерфейса) мы его знаем (статический он или динамический) и можем запомнить. Это всё понятно, можно так работать, но это бред.

В обычном случае мы можем в любой момент вызвать ifconfig и он, во чудо, нам покажет все поднятые интерфейсы и инфу по ним. И откуда он знает какие интерфейсы подняты? помнит что ли какие поднимал? вряд ли. как то не надёжно. Значит узнаёт у ядра. Как? пути два через системные вызовы и proc. proc вроде облазил, и вроде не нашёл.

Не охота блин в исходники ifconfig лесть, может ктонить чегонить толковое сказать, а не из темы какой задал такой и стоит, мож уже давно и не стоит (интерфейс в смысле).

Внимание вопрос: откуда ifconfig получает информацию о том какие интерфейсы подняты и инфу по ним, в частности ip?

anonymous
()
Ответ на: комментарий от anonymous

почитай-ка ман на proc и достигнешь просветления. А вообще - есть strace. Тот, кто им умеет пользоваться - не знает проблем и волосы его всегда мягкие и шелковистые...

grustnoe ★★
()

P.S. /proc/net/dev - оно ?

spirit ★★★★★
()
Ответ на: комментарий от anonymous

Если адрес от DHCP то все параметры его аренды в текстовом виде лежат где то в /var/lib/dhcp или /etc в зависимости от того какой клиент и дистрибутив

login
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.