Fórum Root.cz
Hlavní témata => Sítě => Téma založeno: q 18. 05. 2012, 14:28:18
-
Zdravim!
Potrebuju klientovi nastavit firewall po pripojeni a po odpojeni zapsat pocet prenesenych dat do DB. Znam jeho aktualni MAC adresu (vrati mi ji radius pri prihlaseni klienta). IP adresu prideluje DHCP (staticky to pridelovat nemuzu).
Jsem take schopny zjistit, kdy se klient odpoji z logu hostapd:
1337342696.484280: AP-STA-DISCONNECTED 27:2f:a8:9c:75:3f
Jak nejlip zjistit, jakou IP ma aktualne pripojeny klient, kdyz znam jeho MAC adresu?
Napadlo me hledat v dhcp.leases:
# cat /var/lib/dhcp/dhcpd.leases
lease 192.168.10.10 {
starts 5 2012/05/18 12:04:52;
ends 5 2012/05/18 13:04:52;
cltt 5 2012/05/18 12:04:52;
binding state active;
next binding state free;
hardware ethernet 27:2f:a8:9c:75:3f
client-hostname "pc";
}
da se v tom poznat odpojeny klient? Ja to nikde nevidim :-(
Nakonec to vidim na postup:
* radius mi rekne MAC adresu klienta
* z vypisu # arp -n
192.168.1.11 ether 27:2f:a8:9c:75:3f C eth0
si pomoci awk zjistim IP pro danou MAC adresu
* Spustim prikazy, ktere potrebuju...
* Cronem budu pravidelne prohledavat log hostapd a tak zjistim, kdy se klient odpoji.
* Spustim prikazy, ktere potrebuju...
Je to dobry napad, nebo se to da realizovat jednoduseji?
-
Z dhcpd.leases nepoznas, kdy se odpoji. Soubor obsahuje pouze zapujcky.
Na arp -n nevidim nic spatneho. Podobne informace najdes i v /proc/net/arp.
-
V leases odpojený klient většinou není vidět, protože na odpojování DHCP často kašle (nakonec není povinné). IP adresa se přiděluje na dobu určitou, a pokud po té době klient nepožádá o prodloužení přídělu, je mu jednoduše sebrána.
Udělal bych to stejně, možná s tím rozdílem, že logy hostapd bych kopíroval i na nějakou pipu (přes syslog?) a četl to jako dlouhý soubor místo periodického procházení.
-
Btw. firewall lze nastavovat i na MAC adresu.
-
A co takhle parsovat logy DHCP? Neni to nejjistejsi cesta?
-
zdravim, co takto arp? nic? hm, dnes nikto necita manualy...
-
2 host
od Josef 18. 05. 2012, 14:53:03
Na arp -n nevidim nic spatneho. Podobne informace najdes i v /proc/net/arp.
Josef zrejme ano.
-
IP adresu prideluje DHCP (staticky to pridelovat nemuzu).
Já jenom aby bylo jasno - to, že to přiděluje DHCP neznamená, že to nejde nastavit tak, aby to bylo pokaždé stejně. Já do konfiguráku svých DHCP serverů vždy definuju MAC adresu zařízení a IP adresu, kterou to dostane. =klient má vždy stejnou IP
-
2 drnest
Samozrejme mas pravdu, ale aby to mohlo fungovat, musis znat MAC adresy vsech pripojenych zarizeni predem a je to totalne nepouzitelny na verejnych sitich etc. coz vzhledem k faktu, ze tazatel sam uvadel, ze staticky to pridelovat nemuze tuto myslenku zavrhuje.
-
Nekdo tu rikal, ze arp. To ale jen v pripade, ze DHCP server bude zaroven i router, nebo ze mam pod kontrolou vsechny routery, ktere komunikuji s klienty. Jinak MAC adresu nevidim...
Takze obecne receno, tudy cesta vest nemusi...
-
Samozrejme mas pravdu, ale aby to mohlo fungovat, musis znat MAC adresy vsech pripojenych zarizeni predem
Nemusíš... Já mám doma rezervované dvě IP pro konkrétní stroje, zbytek dostává přiřazenou "co je zrovna volná". A dneska už to nabízí i každý router za dvě stovky.
-
Nekdo tu rikal, ze arp. To ale jen v pripade, ze DHCP server bude zaroven i router, nebo ze mam pod kontrolou vsechny routery, ktere komunikuji s klienty. Jinak MAC adresu nevidim...
Takze obecne receno, tudy cesta vest nemusi...
Špatně. ARP používají všechny stroje, aby znaly MAC ostatních strojů na stejné síti a mohli s nimi komunikovat. ARP se nepoužívá nejspíš akorát v případě, že ve vazba IP-MAC staticky definovaná (např. kvůli bezpečnosti, podstrčit cízí MAC do ARP není problém).