1

Здравствуйте!

Как удобне всего получить список ip-адресов, видимых хостом?
Конкретно интересуют локальные. Напринер, "netstat -t -n",
но, м.б., можно как-то лучше?

Пётр.

Пётр.

2

 Консоль:
# lsof -i

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

3

Что-то она вообще не вывела мне те адреса, которые вывела "netstat -t -n".

Пётр.

Пётр.

4

Как удобне всего получить список ip-адресов, видимых хостом?

что значит "видимых" ? Есть arp -a к примеру. Если вы про established соединения , тогда чем не устраивает netstat -an | grep EST ? Есть также iftop.

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

5

Peter пишет:

Что-то она вообще не вывела мне те адреса, которые вывела "netstat -t -n".

и что? netstat выводит 100500 закрытых соединений, зачем они вам?

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

6

"netstat -an|grep EST" и |netstat -t -n" выводят одно и то же, "lsof -i" выводит ту же информацию и ещё нечто,
вот "arp -a" вывела адрес шлюза - 192.168.0.1, это ближе всего  к тому, что я хотел.
Вообще я имел в виду ситуацию, когда в Ethernet воткнуто устройство с неизвестным ip-адресом и его надо узнать.

Пётр.

Пётр.

7

Вы можете использовать nmap 10.10.0.0/24 к примеру. Ну или вы можете написать скрипт, который будет пинговать все адреса в сети с count 1

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

8

локальные адреса?

 Консоль:
ip addr

9

Peter пишет:

"netstat -an|grep EST" и |netstat -t -n" выводят одно и то же, "lsof -i" выводит ту же информацию и ещё нечто,

по вашему, если сервер слушает все IP на 80ом порту, то он их "не видит"?

Peter пишет:

Вообще я имел в виду ситуацию, когда в Ethernet воткнуто устройство с неизвестным ip-адресом и его надо узнать.

а так не бывает. Есть только 3 варианта:
1. устройство является DHCP сервером. В этом случае мы просим у него дать нам какой-нить IP. Просим мы по IP 255.255.255.255.
2. устройство является DHCP клиентом, тогда оно у нас просит IP.
3. устройство имеет статический IP, тогда мы его прописываем ручками и там и там.

elve пишет:

ip addr

это наши IP.

riso пишет:

Ну или вы можете написать скрипт, который будет пинговать все адреса в сети с count 1

классная идея! Статистическое время ожидания 136 лет.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

10

Peter пишет:

вот "arp -a" вывела адрес шлюза - 192.168.0.1, это ближе всего  к тому, что я хотел.

ну попробуйте конечно этот свой arp, может что и получится http://www.opennet.ru/man.shtml?topic=a … ;russian=0

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

11

Статистическое время ожидания 136 лет.

нет. ping -w 1 -c 1, на каждый адрес 1 секунда. сеть 254 машины.

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

12

Сеть класса "C" -- 254 машины, класса "B" -- 65534, класса "A" -- 16777214.

13

если я правильно понял ТС , ему нужно выловить ip роутера или подобного. Обычно адрес находится в сети класса С. 192.168.0.0

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

14

Благодарю за ответы и советы.
На домашнем компьютере "arp -a" тоже возвращает адрес рутера,
"ip addr" показало адрес компьютера, полученный от рутера.
nmap, наверное, и есть то, что надо. Я знал, что есть какая-то мощная команда,
раз или два я сам запускал nmap по примеру из какой-то статьи, но с тех пор успел
забыть это название и знакомый системный администратор тоже не вспомнил.

А ситуация такая: к сетевой карте подключается некое устройство с ip-адресом,
в моём случае это был 10.10.1.69, при этом по инструкции требовалось и компьютеру
присвоить адрес вида 10.10.1.xx. Однако адрес устройства мог оказаться и другим,
т.е. его младший байт и я хотел узнать, можно ли получить этот адрес, не перебирая
вручную.

Пётр.

Пётр.

15

riso пишет:

нет. ping -w 1 -c 1, на каждый адрес 1 секунда. сеть 254 машины.

ну если вам известна сеть/24, то конечно это не займёт много времени.

riso пишет:

Обычно адрес находится в сети класса С. 192.168.0.0

вовсе нет. Кстати более правильно тогда уж использовать подсеть 192.168.1/24

Peter пишет:

но с тех пор успел
забыть это название и знакомый системный администратор тоже не вспомнил.

facepalm.jpg
какой-же это "администратор"????
Кстати, рекомендую воспользоваться одним из гуев к этой утилите, первое время очень удобно. Их Over9000, и потом они зависят от DE. Т.ч. берите в репозитории.

Peter пишет:

А ситуация такая: к сетевой карте подключается некое устройство с ip-адресом,
в моём случае это был 10.10.1.69, при этом по инструкции требовалось и компьютеру
присвоить адрес вида 10.10.1.xx. Однако адрес устройства мог оказаться и другим,
т.е. его младший байт и я хотел узнать, можно ли получить этот адрес, не перебирая
вручную.

а зачем сразу не написали, а угадайку устроили? ну попросите у меня в след раз ссылку, я тоже одну буковку "забуду"  ae
И да, поинтересуйтесь - на устройстве есть DHCP клиент? На многих есть. Он как раз что-бы не перебирать.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

16

bormant пишет:

Сеть класса "C" -- 254 машины, класса "B" -- 65534, класса "A" -- 16777214.

поправочка.
10.0.0.0/8           Private-Use Networks                   [RFC1918] A 16777216 адресов
172.16.0.0/12        Private-Use Networks                   [RFC1918] B 1048576 адресов
192.168.0.0/16       Private-Use Networks                   [RFC1918] C 65536 адресов
пруф http://tools.ietf.org/html/rfc3330

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

17

вовсе нет. Кстати более правильно тогда уж использовать подсеть 192.168.1/24

у 90 % обычных сетевых железяк сеть 192.168.0.0/24, где вы видели единицу не знаю. А вообще в инструкции или на коробке находиться адрес.

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

18

drBatty пишет:
Peter пишет:

но с тех пор успел
забыть это название и знакомый системный администратор тоже не вспомнил.

facepalm.jpg
какой-же это "администратор"????
Кстати, рекомендую воспользоваться одним из гуев к этой утилите, первое время очень удобно. Их Over9000, и потом они зависят от DE. Т.ч. берите в репозитории.

Peter пишет:

А ситуация такая: к сетевой карте подключается некое устройство с ip-адресом,
в моём случае это был 10.10.1.69, при этом по инструкции требовалось и компьютеру
присвоить адрес вида 10.10.1.xx. Однако адрес устройства мог оказаться и другим,
т.е. его младший байт и я хотел узнать, можно ли получить этот адрес, не перебирая
вручную.

а зачем сразу не написали, а угадайку устроили? ну попросите у меня в след раз ссылку, я тоже одну буковку "забуду"  ae
И да, поинтересуйтесь - на устройстве есть DHCP клиент? На многих есть. Он как раз что-бы не перебирать.

По-видимому, я неточно выразился в 1-й раз: всех видимых, а конкретно локальных,
я имел в виду буквально это - находящихся в локальной сети.
DHCP там нет, это какой-то специализированный модем с фиксированным адресом.

Пётр.

Пётр.

19

riso пишет:

у 90 % обычных сетевых железяк сеть 192.168.0.0/24, где вы видели единицу не знаю.

просто 0 это вообще говоря адрес самой сети. Это НЕ стандарт, просто договорённость. Любая железка может иметь адрес заканчивающийся на ноль IRL, но это не является "правильным". Производители действительно часто забивают болт на это правило (железячники, что с них взять-то  smile )

riso пишет:

А вообще в инструкции или на коробке находиться адрес.

ТС как я понял хотел автоматом. Я ему и разъяснял, что такой автомат уже есть, и называется DHCP, из-за него кстати нельзя использовать адрес 255, ибо это широковещательный запрос (для всех).

riso пишет:

у 90 % обычных сетевых железяк сеть 192.168.0.0/24

кстати, эти ваши слова являются истинной на все 100%
Что касается последнего нуля, то с учётом /24 (работают 24 первых бита) там можно писать вообще что угодно, но принято писать 0.
Что касается предпоследнего нуля - всё тоже правильно - это адрес сети. Потому и 0.
Но вот только сама железяка должна по уму иметь адрес 1, потому как ноль формально уже занят. Это касается и последнего числа.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

20

Peter пишет:

По-видимому, я неточно выразился в 1-й раз: всех видимых, а конкретно локальных,
я имел в виду буквально это - находящихся в локальной сети.

угу. Причём не только "конкретно локальных", а 10.10.1.0/24 (так правильно записывается данный диапазон сети класса А)

Peter пишет:

DHCP там нет

ну это как раз плохо, ибо если-бы был, то постоянно слал-бы вам на 255.255.255.255 тот IP, под которым он желает работать (или просто "дайте хоть что-нить!"). Ну а так - только сканирование или вручную.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

21

drBatty, естественно я имел ввиду адрес сети ab и маску же дописал..

Что касается последнего нуля, то с учётом /24 (работают 24 первых бита) там можно писать вообще что угодно, но принято писать 0.

если я допишу что угодно, то это будет адрес машины, а не сети.

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

22

riso пишет:

естественно я имел ввиду адрес сети smile и маску же дописал..

угу. уверен, многие не поймут.

riso пишет:

если я допишу что угодно, то это будет адрес машины, а не сети.

нет. там можно писать всё что угодно, или вообще не писать ничего 192.168.1/24
можно и так 192.168.1.123/24 это тоже самое.
Но таки правильнее ничего не писать, или писать ноль.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

23

можно и так 192.168.1.123/24 это тоже самое.

это адрес машины

192.168.1/24

а это не правильная запись, т.к. тоже указана маска..

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

24

riso пишет:

можно и так 192.168.1.123/24 это тоже самое.

это адрес машины

192.168.1/24

а это не правильная запись, т.к. тоже указана маска..

обе записи рабочие. Можно проверить. Что до стандарта - лень копаться. IRL применяют обе формы, и не комплексуют.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

25

Мне просто показалось, что вы хотите сказать, что 192.168.1.123/24 это адрес сети. На счет192.168.1/24 записи спорить не буду, т.к. не применяю.

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

26 (03.03.2012 03:15:43 отредактировано drBatty)

riso пишет:

Мне просто показалось, что вы хотите сказать, что 192.168.1.123/24 это адрес сети.

это адрес сети и есть.
Он покрывает 2^(32-24) == 2^8 == 256 адресов. причём сразу.

riso пишет:

На счет192.168.1/24 записи спорить не буду, т.к. не применяю.

очень удобно, например 10/8 это локальная сеть класса А.

ЗЫЖ да, для любителей венды: в первом случае маска 255.255.255.0, а во втором 255.0.0.0. ну так она пишет почему-то.

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)

27

Он покрывает 2^(32-24) == 2^8 == 256 адресов. причём сразу.

да, маска 24 покрывает 256 адресов, соглашусь. Но 123 в конце - это адрес машины. Поэтому при записи 192.168.1.123/24 имеется ввиду адрес машины, а при записи 192.168.1.0/24 - адрес сети.

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст

28

drBatty пишет:
bormant пишет:

Сеть класса "C" -- 254 машины, класса "B" -- 65534, класса "A" -- 16777214.

поправочка.
10.0.0.0/8           Private-Use Networks                   [RFC1918] A 16777216 адресов
172.16.0.0/12        Private-Use Networks                   [RFC1918] B 1048576 адресов
192.168.0.0/16       Private-Use Networks                   [RFC1918] C 65536 адресов
пруф http://tools.ietf.org/html/rfc3330

В огороде бузина, а в Киеве дядька. В исходном сообщении речь о классах сетей, а в поправочке о приватных диапазонах.

RFC3330 Special-Use IPv4 Addresses описывает диапазоны адресов IPv4 специального назначения (неожиданно  wink ).
http://tools.ietf.org/html/rfc1918 говорит прямо, что под приватные адреса выделена 1 сеть класса "A", 16 последовательных сетей класса B и 256 последовательных сетей класса "C".

3. Private Address Space

   The Internet Assigned Numbers Authority (IANA) has reserved the
   following three blocks of the IP address space for private internets:

     10.0.0.0        -   10.255.255.255  (10/8 prefix)
     172.16.0.0      -   172.31.255.255  (172.16/12 prefix)
     192.168.0.0     -   192.168.255.255 (192.168/16 prefix)

   We will refer to the first block as "24-bit block", the second as
   "20-bit block", and to the third as "16-bit" block. Note that (in
   pre-CIDR notation) the first block is nothing but a single class A
   network number, while the second block is a set of 16 contiguous
   class B network numbers, and third block is a set of 256 contiguous
   class C network numbers
.

Сеть класса "A" -- это /8, "B" -- /16, "C" -- /24. Без вариантов. RFC870.

Далее, поскольку 0-й и последний адрес использовать для хоста нельзя (один из них адрес сети, другой широковещательный), получим указанные в исходном сообщении цифры.

29 (03.03.2012 13:09:56 отредактировано bormant)

riso пишет:

при записи 192.168.1.123/24 имеется ввиду адрес машины, а при записи 192.168.1.0/24 - адрес сети.

Кем имеется? На каком основании?
map 192.168.1.123/24 будет сканировать только 1 хост?

Адрес хоста -- это всегда /32 (255.255.255.255).

ps. Просто примените маску и вопросов не останется.
x.x.x.Y & 255.255.255.0 == x.x.x.0

30

хорошо, nmap действительно просканирует всю сеть, здесь я согласен с вами.

Address:         192.168.1.123              11000000.10101000.00000001. 01111011
Netmask:     255.255.255.0 = 24         11111111.11111111.11111111. 00000000
Network:         192.168.1.0/24            11000000.10101000.00000001. 00000000

Address:         192.168.1.123 

— Ты кто?
— Часть силы той, что без числа
Творит добро, всему желая зла. © Фауст