IP-adresa + Broadcast

Honza Pazdziora adelton na informatics.muni.cz
Sobota Květen 11 13:47:51 MEST 2002


On Sat, May 11, 2002 at 01:15:59PM +0200, Petr Ruzicka wrote:
> Dobry den.
> Neexistuje nejaka funkce, ktera zjisti IP-Adresu pocitace a jeho masku a
> Broadcast adresu.
> Pokud ne muze mi nekdo napsat jak to vyparsnout z ifconfigu?
> 
> Me napadlo neco jako :
> ($adr) = $line =~ m/\s*:(\d*\.\d*\.\d*\.\d*)/
> 
> Bohuzel nevim jak pokracovat dal - chel bych neco jako
> 
> ($adr,$bcast,$mask) = $line =~ m/\s*:(\d*\.\d*\.\d*\.\d*) \s* .....
> (nevim)

... No, a pokracujte v tom regularnim vyrazu tak, jak pokracuje ten
vystup z ifconfigu. Ktery jste opomnel uvest. Nicmene pokud bychom
meli tento vystup

$ ifconfig ec0
ec0: flags=400c43<UP,BROADCAST,RUNNING,FILTMULTI,MULTICAST,IPALIAS>
        inet 129.6.6.6 netmask 0xffffff00 broadcast 129.6.6.255

tak regularni vyraz, ktery to pekne pokryje je napriklad

/inet (\d+\.\d+\.\d+\.\d+) netmask (0x\S+) broadcast (\d+\.\d+\.\d+\.\d+)/

A kdyz tohle priradite do seznamu ($inet, $netmask, $broadcast), tak
mate presne to, co jste potreboval.

-- 
------------------------------------------------------------------------
 Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
      ... all of these signs saying sorry but we're closed ...
------------------------------------------------------------------------


Další informace o konferenci Perl