Muitas dúvidas já presenciei e respondi, sobre "como saber o IP" ou "como listar NetBIOS da minha rede", ou até "como saber todas máquinas da minha rede", ou entao "como pegar MAC Address", entre outras coisas.
Aqui, vou demonstrar uma dupla de programinhas que podem resolver com classe estas questões em 
Linux :]
findsmb: Mostra as máquinas windows e linux da rede.
-  Pacote: smb-clients (no cd da própria distribuição, ou apt.)
-  Instalação: # apt-get install smb-clients
-  Uso: # findsmb
Exemplo:
# findsmb
IP ADDR         NETBIOS NAME   WORKGROUP/OS/VERSION
---------------------------------------------------------------------
192.168.0.3     PDC            [ONLINE] [Unix] [Samba 2.2.8]
192.168.0.4     DIAG_SERVER   +[ONLINE] [Unix] [Samba 3.0.14a-Debian]
192.168.0.5     ERP           *[IBC] [Windows Server 2003 3790] [Windows Server 2003 5.2]
192.168.0.6     CPD_DEVELOPER  [ONLINE] [Windows 5.1] [Windows 2000 LAN Manager]
192.168.0.7     DIAG_LUCIANO   [ONLINE] [Windows 5.1] [Windows 2000 LAN Manager]
192.168.0.20    DIAG_MIRO      [ONLINE] [Windows 5.1] [Windows 2000 LAN Manager]
192.168.0.21    BORD_LARISSA   [ONLINE] [Unix] [Samba 2.2.8]
192.168.0.22    ADM_JULIANA    [ONLINE] [Windows 5.1] [Windows 2000 LAN Manager]
192.168.0.25    DEC_SIMOES     [ONLINE] [Unix] [Samba 3.0.4]
192.168.0.30    TUR_JULIANA    [ONLINE] [Unix] [Samba 2.2.8]
nbtscan: Scanning pela rede, retornando o NetBIOS da estação.
Exemplo: 
# nbtscan 192.168.0.127
Doing NBT name scan for addresses from 192.168.0.127
IP address       NetBIOS Name     Server    User             MAC address
------------------------------------------------------------------------------
192.168.0.127    VEN_RONIE        <server>  VENDA32          00-e0-06-f0-cf-30
As opções de uso são excelentes, podemos até fazer um scan em uma rede completa, range de rede, classe de rede, modo verbose, podemos escolher, como saída padrão de /etc/hosts (-e), /etc/lmhosts (-l) enfim, a ajuda é bem completa.
Caso saiba de algum outro método, por favor, contribua!
[]'s