Jump to content

Recommended Posts

Posted (edited)

Собственно, написал утилитку для обнаружения в сети юзеров, которых ни пингом, ни arping-ом обнаружить не получается.

Например, когда абонент сбил настройки.

Позволяет увидеть машину абонента по маку, даже если у него прописан совершенно левый айпишник

(arping по маку не предлагать! ибо на ICMP broadcast вообще никто не отвечает)

 

пример работы:

#./lltdscan -t1300 -v          
interface eth0
101 bytes from 00:01:33:ed:54:a1 (192.168.123.12 ): time=929 ms name="XZ"
     Host ID: 00 01 ee ff 22 a1 
    Charact.: 20 00 00 00       (full-duplex)
       Media: 00 00 00 06       (Ethernet)
   Perf.cntr: 00 00 00 00 00 36 9e 99 
  Link speed: 100 Mbit/s
        Name: 31 00 43 00 
         QoS: 60 00 00 00       (802.1q-support, 802.1p-support)

found 1 hosts in 1.302 seconds

 

#lltdscan -i vlan112
interface vlan234
109 bytes from 00:e0:4c:4c:23:32 (192.168.18.2 ): time=300 ms name="pc2009"
127 bytes from 00:1d:60:35:ad:dd (192.168.13.4 ): time=601 ms name="microsof-11798c"
105 bytes from 00:0e:a6:bb:11:22 (192.168.11.8 ): time=601 ms name="kkkk"
109 bytes from 00:01:6c:b7:33:55 (192.168.33.8 ): time=623 ms name="pc2009"
115 bytes from 4c:00:10:00:f1:64 (192.168.19.46): time=903 ms name="zemlyanka"
127 bytes from 00:1f:c6:e9:19:31 (192.168.18.58): time=932 ms name="microsof-2fa310"
107 bytes from 00:e0:4c:15:49:5e (192.168.18.8 ): time=950 ms name="w0r5t"
127 bytes from 00:c0:9f:b3:53:58 (192.168.78.06): time=952 ms name="rgzkv6snijlrhln"
127 bytes from 00:0c:76:cc:52:5b (192.168.35.12): time=990 ms name="microsof-34de4d"
found 9 hosts in 3.101 seconds

 

предыстория и некоторые подробности тут: lltd scanner

код утилиты тут: http://github.com/zed-0xff/lltdscan

 

UPD: если программа понравилась, плюсание плз карму на хабре - http://zed-0xff.habrahabr.ru/ а то не хватает там разместить.

Edited by zed_0xff
Posted

Не знаю как в других XP, но в Professional SP3 в компонентах сетевого подключения имеется

[v] Ответчик обнаружения топологии уровня связи

 

Ну и собственно lltdscan такой компьютер находит.

Posted

Не хотит собираться:

 make
gcc -g -I/usr/local/include -I/usr/local/include/libnet-1.1 -I/usr/include/pcap                                   -I/usr/local/include/libnet11 -g -L/usr/local/lib -L/usr/local/lib/libnet-1.1 -L                                  /opt/csw/lib -L/usr/local/lib/libnet11 -o lltdscan lltdscan.c -lnet -lpcap -lrt
lltdscan.c:5:20: error: libnet.h: No such file or directory
In file included from lltdscan.c:7:
lltd.c: In function 'lltd_dump_tlv':
lltd.c:18: warning: incompatible implicit declaration of built-in function 'strc                                  at'
lltd.c:24: warning: incompatible implicit declaration of built-in function 'strl                                  en'
lltd.c:28: warning: incompatible implicit declaration of built-in function 'strc                                  py'
lltd.c:48: warning: incompatible implicit declaration of built-in function 'strl                                  en'
lltdscan.c: At top level:
lltdscan.c:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'h                                  osts'
lltdscan.c: In function 'got_packet':
lltdscan.c:51: error: 'uint64_t' undeclared (first use in this function)
lltdscan.c:51: error: (Each undeclared identifier is reported only once
lltdscan.c:51: error: for each function it appears in.)
lltdscan.c:51: error: expected ';' before 'host_id'
lltdscan.c:56: warning: incompatible implicit declaration of built-in function '                                  memcpy'
lltdscan.c:56: error: 'host_id' undeclared (first use in this function)
lltdscan.c:59: error: 'hosts' undeclared (first use in this function)
lltdscan.c: In function 'main':
lltdscan.c:119: error: 'libnet_t' undeclared (first use in this function)
lltdscan.c:119: error: 'l' undeclared (first use in this function)
lltdscan.c:120: error: 'libnet_ptag_t' undeclared (first use in this function)
lltdscan.c:120: error: expected ';' before 'eth_ptag'
lltdscan.c:124: warning: incompatible implicit declaration of built-in function                                   'memset'
lltdscan.c:130: error: 'optarg' undeclared (first use in this function)
lltdscan.c:147: warning: incompatible implicit declaration of built-in function                                   'exit'
lltdscan.c:147: error: 'EXIT_SUCCESS' undeclared (first use in this function)
lltdscan.c:149: error: 'EXIT_FAILURE' undeclared (first use in this function)
lltdscan.c:152: error: 'optind' undeclared (first use in this function)
lltdscan.c:156: warning: incompatible implicit declaration of built-in function                                   'exit'
lltdscan.c:159: warning: incompatible implicit declaration of built-in function                                   'strlen'
lltdscan.c:161: warning: incompatible implicit declaration of built-in function                                   'exit'
lltdscan.c:176: error: 'LIBNET_LINK' undeclared (first use in this function)
lltdscan.c:179: warning: incompatible implicit declaration of built-in function                                   'exit'
lltdscan.c:190: warning: cast to pointer from integer of different size
lltdscan.c:192: warning: incompatible implicit declaration of built-in function                                   'exit'
lltdscan.c:199: warning: incompatible implicit declaration of built-in function                                   'memcpy'
lltdscan.c:205: error: 'eth_ptag' undeclared (first use in this function)
lltdscan.c:216: warning: incompatible implicit declaration of built-in function                                   'exit'
lltdscan.c:226: warning: incompatible implicit declaration of built-in function                                   'exit'
make: *** [lltdscan] Error 1

 

В чем может быть проблема?

Posted (edited)

[root@t0ly-wrk ~/Soft/lltdscan/zed-0xff-lltdscan-939327bfe3b0655a5b83835acc5cd145131ea0ae]# gmake

gcc -g -I/usr/local/include -I/usr/local/include/libnet-1.1 -I/usr/include/pcap -I/usr/local/include/libnet11 -I/usr/local/include/libnet113 -g -L/usr/local/lib -L/usr/local/lib/libnet-1.1 -L/opt/csw/lib -L/usr/local/lib/libnet11 -o lltdscan lltdscan.c -lnet -lpcap -lrt

/usr/bin/ld: cannot find -lnet

gmake: *** [lltdscan] Ошибка 1

[root@t0ly-wrk ~/Soft/lltdscan/zed-0xff-lltdscan-939327bfe3b0655a5b83835acc5cd145131ea0ae]# ldconfig -r|grep '\:\-lnet'

47:-lnetgraph.3 => /usr/lib/libnetgraph.so.3

186:-lnetsnmp.16 => /usr/local/lib/libnetsnmp.so.16

187:-lnetsnmpagent.16 => /usr/local/lib/libnetsnmpagent.so.16

188:-lnetsnmptrapd.16 => /usr/local/lib/libnetsnmptrapd.so.16

249:-lnetsnmphelpers.16 => /usr/local/lib/libnetsnmphelpers.so.16

250:-lnetsnmpmibs.16 => /usr/local/lib/libnetsnmpmibs.so.16

771:-lnet-1.1.3.1 => /usr/local/lib/libnet-1.1.3.so.1

1033:-lnetgraph.1 => /usr/local/lib/compat/libnetgraph.so.1

1113:-lnetgraph.2 => /usr/local/lib/compat/libnetgraph.so.2

1194:-lnet.1 => /usr/local/lib/libnet113/libnet.so.1

[root@t0ly-wrk ~/Soft/lltdscan/zed-0xff-lltdscan-939327bfe3b0655a5b83835acc5cd145131ea0ae]#

Edited by t0ly
Posted

t0ly, попробуйте так:

cc -g -I/usr/local/include -I/usr/local/include/libnet-1.1 -I/usr/include/pcap -I/usr/local/include/libnet11 -I/usr/local/include/libnet113 -g -L/usr/local/lib -L/usr/local/lib/libnet-1.1 -L/opt/csw/lib -L/usr/local/lib/libnet11 -L /usr/local/lib/libnet113 -o lltdscan lltdscan.c -lnet -lpcap -lrt

 

и сообщите о результате

Posted
hiller, установите пакеты libnet* (libnet-devel, libnet-headers если есть)

Блин, сам дурак, просмотрел... Поставил -devel, все собралось. Спасибо за помощь и за программу :)

Posted

Заметил одно интересное ограничение/странность в реализации протокола LLTDP на Windows XP, а может и на всех остальных виндюках - тоже.

 

 

Есть компьютер, который имеет несколько адресов на одной сетевушке, в результате сканирования мы видем только один из установленных на нем адресов, но вопреки логике, не тот, с которого компьютер ходит по default route, а вообше "левый".

 

 

interface ge0
115 bytes from 00:19:21:3f:f2:68 (10.90.90.144   ): time=570 ms name="buhgalter"
     Host ID: 00 19 21 3f f2 68
    Charact.: 00 00 00 00
       Media: 00 00 00 06       (Ethernet)
        IPv4: 0a 5a 5a 90
   Perf.cntr: 00 00 00 00 00 36 9e 99
  Link speed: 100 Mbit/s
        Name: 62 00 75 00 68 00 67 00 61 00 6c 00 74 00 65 00 72 00
         QoS: 00 00 00 00

Posted

Есть компьютер, который имеет несколько адресов на одной сетевушке, в результате сканирования мы видем только один из установленных на нем адресов, но вопреки логике, не тот, с которого компьютер ходит по default route, а вообше "левый".

Все правильно, в спецификации протокола написано что возвращается либо "белый" айпишник (если есть), либо "первый попавшийся серый" (вольный перевод :)

Posted
t0ly, попробуйте так:

cc -g -I/usr/local/include -I/usr/local/include/libnet-1.1 -I/usr/include/pcap -I/usr/local/include/libnet11 -I/usr/local/include/libnet113 -g -L/usr/local/lib -L/usr/local/lib/libnet-1.1 -L/opt/csw/lib -L/usr/local/lib/libnet11 -L /usr/local/lib/libnet113 -o lltdscan lltdscan.c -lnet -lpcap -lrt

 

и сообщите о результате

собралось

спасибо

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.