http://www.zago.eti.br/script/ip-pegar.txt FAQ, dicas e indicações pra scripts pra pegar IP, manipular IP em variaveis e scripts. veja também outro FAQ sobre IP, semelhante a este, veja em: http://www.zago.eti.br/firewall/ip.txt Configurar a placa de rede e configurações de IP veja no FAQ: http://www.zago.eti.br/placa_ne.txt Pra calcular, mascara de rede, sub-rede, indicações de outros arquivos no FAQ com mais dicas sobre IP, veja no FAQ http://www.zago.eti.br/ip.txt http://www.zago.eti.br/firewall/ip.txt http://www.zago.eti.br/ip_calc.txt http://www.zago.eti.br/firewall/ Use CTRL+F para refinar a pesquisa. Linha de: **************** separa mensagens ou tópicos. ******************************************************** Zago http://www.zago.eti.br/menu.html FAQ e artigos sobre Linux Veja também o resultado dos comandos: Comando hostname -i retorna o ip da propria maquina. hostname -i 192.168.1.130 ifconfig -a retorna IP, MAC e outras informações, neste resultado o IP é 192.168.1.130 [root@cl10 root]# ifconfig -a eth0 Encapsulamento do Link: Ethernet Endereço de HW 00:0C:76:8F:27:2F inet end.: 192.168.1.130 Bcast:192.168.1.255 Masc:255.255.255.0 cat /etc/sysconfig/network-scripts/ifcfg-eth0 retorna as configurações da placa de rede, veja o resultado: [root@cl10 root]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 ONBOOT=yes BOOTPROTO=static IPADDR=192.168.1.130 NETMASK=255.255.255.0 HOSTNAME=cl10 DOMAIN=zago.eti.br cat /etc/hosts [root@cl10 root]# cat /etc/hosts 127.0.0.1 localhost.localdomain localhost 192.168.1.130 cl10.zago.eti.br cl10 Uso do comando arp. arp - manipula o cache ARP do sistema Não esqueça do manual = man arp arp -v Pra pegar IP de maquinas remotas conectatas na sua maquina: [root@cl10 root]# arp -v Endereço TipoHW EndereçoHW Flags Máscara Iface 192.168.1.53 ether 00:E0:4C:91:46:6C C eth0 Pra selecionar a placa de rede na pesquisa use -i [root@cl10 root]# arp -i eth0 Endereço TipoHW EndereçoHW Flags Máscara Iface 192.168.1.53 ether 00:E0:4C:91:46:6C C eth0 Pegar IP de todas as maquinas da rede, precisa instalar o pacote nmap. [root@cl10 apt]# nmap -sP 192.168.1.* Starting nmap 3.50 ( http://www.insecure.org/nmap/ ) at 2005-04-05 21:53 BRT Host 192.168.1.2 appears to be up. Host 192.168.1.53 appears to be up. Host 192.168.1.100 appears to be up. Host 192.168.1.120 appears to be up. Host cl10.zago.eti.br (192.168.1.130) appears to be up. Nmap run completed -- 256 IP addresses (5 hosts up) scanned in 48.680 seconds arping [root@cl10 root]# apt-cache search arping arping - Utilitário para ARP ping man arping ******************************************************** O IP fica no arquivo: #cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth1 ONBOOT=yes BOOTPROTO=static IPADDR=192.168.1.2 NETMASK=255.255.255.0 GATEWAY=192.168.1.254 Isto é o basico, poderá ter mais diretivas nesta configuração. Cada placa de rede tem um arquivo associado a ela, pra segunda placa será ifcfg-eth1, e assim por diante, pra saber o IP pode acessar este arquivo diretamente, usar comandos como: ifconfig ifconfig -a Tem varias ferramentas e formas se saber qual o IP da maquina, pra usar em script segue alguns exemplos de comandos pra pegar IP e colocar em uma variavel. Scripts pra pegar IP. [zago@faqcl9 zago]$ hostname -i 192.168.1.53 [root@faqcl9 root]# ipeth0=`LC_ALL= LANG= ifconfig eth0 | grep "inet addr:" | sed 's/.*inet addr://' | cut -d ' ' -f 1` cuidado com a quebra de linha no navegador, cliente de e-mail ou editores de texto, a linha acima é uma única linha de comando, a linha abaixo foi quebrada com a barra pra copiar e colar sem problema, o resultado é o mesmo: ipeth0=`LC_ALL= LANG= ifconfig eth0 | grep "inet addr:" | \ sed 's/.*inet addr://' | cut -d ' ' -f 1` Gravar IP local na variavel ipeth0: como root: ipeth0=`LC_ALL= LANG= ifconfig eth0 | grep "inet addr:" | \ sed 's/.*inet addr://' | cut -d ' ' -f 1` com user normal: ipeth0=`LC_ALL= LANG= /sbin/ifconfig eth0 | grep "inet addr:" | \ sed 's/.*inet addr://' | cut -d ' ' -f 1` Neste exemplo pega o IP da eth0, pra outros device, troque na linha de comando eth0 pelo que deseja pegar o IP. Observe que "LC_ALL= LANG= " ajusta pro idioma local, alguns scripts não consideram isto e acaba não pegando o IP, observe isto nas mensagens deste FAQ, alguns script funcionam coretamente somente pra quem está usando o idioma ingles. pra ver o resultado: [zago@faqcl9 zago]$ ipeth0=`LC_ALL= LANG= /sbin/ifconfig eth0 | grep "inet addr:" | \ sed 's/.*inet addr://' | cut -d ' ' -f 1` [zago@faqcl9 zago]$ echo $ipeth0 192.168.1.53 ipeth0=`ifconfig eth0 | grep inet | cut -f2 -d: | cut -f2 -d" "` echo $ipeth0 192.168.1.3 Ou: ipeth0=`LC_ALL= LANG= /sbin/ifconfig eth0 | grep inet | cut -f2 -d: | cut -f1 -d" "` echo $ipeth0 192.168.1.3 ******************************************************** Pegar o MAC das placas de rede. Vá na estação e dispare um ping para o servidor e depois execute arp no servidor, veja a sequencia: Na estação: ping -c3 192.168.1.53 No servidor o comando arp retorna: arp Endereço TipoHW EndereçoHW Flags Máscara Iface 192.168.1.121 ether 00:0C:76:8F:27:2F C eth0 ******************************************************** Pegar IP via site: http://whatismyip.com Saber qual IP pegou na conexão, com qual IP está navegando, ideal para usar em maquinas atras de proxy ou quando usa IP dinamico, pode executar na estaçao da rede que pega o IP real que está usando na net. Varios sites fornecem o IP ao acessar via browser, via script vai a dica abaixo, a penultima linha envia o IP por e-mail, esta opção de enviar por e-mail vale somente em maquinas com servidor de e-mail rodando, caso queira o resultado no console, remova o redirecionador para o arquivo ipatual.txt esta parte (> ipatual.txt), Para executar junto com o boot, acrescente no /etc/rc.d/rc.local ou outro local mais apropriado na sua distro/instalação, segue copia do script. [root@mailserv zago]# cat /etc/rc.d/ipatual.sh #!/bin/bash wget http://whatismyip.com/ -q -O ipatual cat ipatual | grep " ipatual.txt mail zagolinux@gmail.com < ipatual.txt rm -rf ipatual rm -rf ipatual.txt exit 0 As linhas que iniciam com rm -rf removem os dois arquivos que foram criados no diretório local rm -rf ipatual rm -rf ipatual.txt ******************************************************** Pegar IP via site: http://whatismyip.com #!/bin/bash cd /tmp ARQUIVOIP=`cat /tmp/iparquivo` # ultimo ip enviado # estação com IP 192.168.1.3, buscar o IP na net (myip) wget http://whatismyip.com/ -q -O ipatual cat ipatual | grep " /tmp/ipatual.txt IPATUAL=`cat /tmp/ipatual.txt` # comparar IP atual com iparquivo echo $IPATUAL echo $ARQUIVOIP if [ $IPATUAL != $ARQUIVOIP ] then echo $IPATUAL # enviar e-mail DESTINATARIO="zagolinux@gmail.com" ASSUNTO="Novo IP de .." MENSAGEM="Novo IP $IPATUAL" echo "$MENSAGEM" | mail -s "$ASSUNTO" "$DESTINATARIO" echo $IPATUAL > /tmp/iparquivo fi falta testar a existencia do arquivos /tmp/iparquivo ou se vazio. #testar se existe iparquivo #if -f /tmp/iparquivo #if [ $? = 0 ]; then # exit # else # echo "200.204.0.10" > /tmp/iparquivo #fi Ou da forma mais simples. Pegar o IP da própria maquina, funciona na maquina do firewall, em maquinas que faz a conexão com com rp-pppoe use interface ppp0, nas demais use eth0 ou eth1 conforme a configuração. Altere nos exemplos abaixo para sua interface e e-mail enviar a linha do ifconfig que informa o IP, exemplo de recebida. (inet end.: 192.168.1.3 Bcast:192.168.1.255 Masc:255.255.255.0) ifconfig eth0 | grep inet | mail -s "IPATUAL" zagolinux@gmail.com Enviar somente o IP, recebe somente o IP na mensagem LC_ALL= LANG= /sbin/ifconfig eth0 | grep inet | cut -f2 -d: | cut -f1 -d" " | mail -s "IPATUAL" zagolinux@gmail.com Outros exemplos para pegar o IP que está navegando. lynx -dump www.whatismyip.com | grep Your | awk '{print $4}' lynx -dump www.whatismyip.com | grep Your | awk '{print $4}' | mail -s "IPATUAL" zagolinux@gmail.com ******************************************************** Pegar IP via site modem club, basta acessar este endereço. http://www.modemclub.com.br/cgi-bin/mostraip.cgi Salvar resultado em arquivo via lynx. lynx -dump http://www.modemclub.com.br/cgi-bin/mostraip.cgi > arqtemp.txt retorna o IP na linha 10 do arquivo arqtemp.txt Passar o IP para variável, fazer comparação ou retirar somente o IP, use um script para incluir os demais comandos, exemplo para jogar o IP em na variável MEUIP. MEUIP=`awk 'NR == 10' arqtemp.txt` echo $MEUIP ******************************************************** Pegar todos IP da rede, separar em dois arquivos, os que respondem e não respondem ao PING. salva o resultado em dois arquivos, caso não queira o resultado do que não respondem, basta eliminar a opção de salvar em falhou.txt for((i=1; i <= 255; i++)); do if ! ping -c 2 192.168.1.$i ; then echo "192.168.1.$i não respondeu $1 " >> falhou.txt else echo "192.168.1.$i respondeu $1 " >> respondeu.txt fi done fonte deste script. http://www.Dicas-L.com.br/dicas-l/20070829.php ******************************************************** De:  Marcus Lima Responder-a:  marcuslima@marcuslima.eti.br Para:  Aguinaldo Fernandes Rosa , linux-br@bazar.conectiva.com.br Assunto:  Re: (linux-br)Script IP Data:  Wed, 17 Sep 2003 15:05:40 -0300 #!/bin/bash export LANG=en sIP=`ifconfig eth0 | grep -i inet | cut -d: -f2 | cut -d. -f1-3` echo $sIP. COMENTARIO ZAGO A resposta acima serve para exibir os 3 primeiros octetos do IP, exibe o IP assim: 192.168.1. caso tire o ponto do "echo $sIP." exibirá o IP assim: 192.168.1 Não sei pra serve mas caso precise basta usar um editor de texto para criar um script, por exemplo: vi pegarip (copie estas linhas para o texto) #!/bin/bash export LANG=en sIP=`ifconfig eth0 | grep -i inet | cut -d: -f2 | cut -d. -f1-3` echo $sIP. depois salve com: SHIT+: wq (grava e sai), torne-o executavel com: chmod +rwx pegarip, e execute-o assim: ./pegarip exibirá no prompt: 192.168.1. Para exibir somente 192.168, altere no script -f1-3` para -f1-2`, fica assim: #!/bin/bash export LANG=en sIP=`ifconfig eth0 | grep -i inet | cut -d: -f2 | cut -d. -f1-2` echo $sIP exibirá: 192.168 Para pegar todo o IP, altere no script -f1-3` para -f1-4`, fica assim: #!/bin/bash export LANG=en sIP=`ifconfig eth0 | grep -i inet | cut -d: -f2 | cut -d. -f1-4` echo $sIP exibirá: 192.168.1.53 Bcast ******************************************************** De:  Carlos Eduardo Para:  agfero@infotec.com.br, linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Script IP - corrigido Data:  Thu, 18 Sep 2003 10:00:09 -0300 Voce pode fazer um script contendo a seguinte linha de comando: cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep -i ipaddr | cut -d'"' -f2 | cut -b-11 OBS.: Na parte que diz ... cut -d'"'...., é uma aspa dupla( " ) cercada por aspas simples( '  ' ), tudo sem espaço. Sem mais Carlos E. COMENTARIO ZAGO, teste no CL9: $ cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep -i ipaddr | cut -d'"' -f2 | cut -b-11 IPADDR=192. Exibiu somente o primeiro octeto do IP da minha maquina. Alterando no final do script de -b-11 para -b-22, exibe o IP completo. $ cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep -i ipaddr | cut -d'"' -f2 | cut -b-22 IPADDR=192.168.1.53 $ cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep -i ipaddr IPADDR=192.168.1.53 Parece que a parte | cut -d'"' -f2 não está fazendo efeito no script. ******************************************************** De:  Augusto Farina Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Como detectar endereçoIP Data:  Wed, 14 Jan 2004 08:33:37 -0200 > Olá! > > Estou utilizando um script de firewall com regras de iptables porém preciso > saber como pegar meu IP já que uso VELOX e meu ip é dinâmico. > > Atualmente estou tentando algo como: > > NET='ifconfig ppp0 | grep inet | cut -f2 -d: | cut -f1 -d" "'/32 > > mas o script retorna um erro tipo 'ppp0 bad argument > > alguma dica! > [auf@nirvana testes]$ cat bla.sh #!/bin/sh BLA=`ifconfig eth0 | grep inet | cut -f2 -d: | cut -f2 -d" "` echo $BLA [auf@nirvana testes]$ ./bla.sh 192.168.1.5 [auf@nirvana testes]$ Só mude sua a interface eth0 para aquela que voce quiser, mas antes veja se ela existe mesmo =) -- ******************************************************** De:  caio ferreira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Como detectar endereçoIP Data:  Wed, 14 Jan 2004 06:22:06 -0200 On Tue, 13 Jan 2004 12:55:10 +0000 Moacir Cardoso wrote: > Estou utilizando um script de firewall com regras de iptables porém > preciso saber como pegar meu IP já que uso VELOX e meu ip é dinâmico. > Atualmente estou tentando algo como: > NET='ifconfig ppp0 | grep inet | cut -f2 -d: | cut -f1 -d" "'/32 > mas o script retorna um erro tipo 'ppp0 bad argument > alguma dica! NET=`ifconfig ppp0 | grep "inet addr:" | sed 's/.*inet addr://' | cut -d' ' -f 1` -- [ ]'s     *******************    .''`. * Caio A. Ferreira   *  : :'  : * GNU/Linux Debian   *  `. `'`   *******************     `- Gnupg ID 0x01186BE1 ******************************************************** De:  Moacir Cardoso Para:  Alessandro Cesar Cc:  linux Assunto:  Re: RES: RES: (linux-br)Como detectar endereçoIP Data:  Wed, 14 Jan 2004 17:33:35 +0000 Consegui! O comando abaixo funciona! `ifconfig ppp0 | grep inet | cut -f 13 -d " "`/32 Bye! Moa :-) ******************************************************** De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br) ¿Variables que retorna o IP da máquina? Data:  Fri, 7 May 2004 21:16:11 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 [não faça cross-post] Miguel da Silva wrote: >Olá para todos ... alguém conhece qual é a variável (se é que > existe...) que retorna o IP que a máquina está usando?!?! Imagino que > se uso DHCP o valor dessa variável mudará quando eu der resete na > máquina, certo? Certo. Não tem nenhuma variável assim. Mas você pode recuperar o IP a partir da saída do comando ifconfig: IP=$(LC_ALL=C ifconfig eth0 | awk '/inet addr:/ { print substr($2,6) }') echo $IP - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info     ICQ UIN: 1967141   PGP/GPG: 0x6EF45358; fingerprint: ******************************************************** De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br) ¿Variables que retorna o IP da máquina? Data:  Sat, 8 May 2004 10:09:11 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Carlos wrote: >#!/usr/bin/perl -w >use strict; >use IO::Socket; >use Sys::Hostname; >my $name = hostname(); >my $ip = inet_ntoa(scalar gethostbyname($name)); >printf("$ip\n"); > > >O programa acima sempre retornara o endereco ip da maquina , estando > ele associado ao hostname. Isso retorna o IP que deveria estar associado. Não garante que ele esteja realmente associado. Além disso, ele sempre retorna o IP principal. Pode ser que o usuário queira o endereço em outra interface. - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info ******************************************************** De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br, Carlos A Silva Assunto:  Re: (linux-br) Achar o IP de camêra AXIS na Rede ! Data:  Sat, 19 Jun 2004 13:09:39 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Carlos A Silva wrote: >Já "varri" com o nmap, nada foi encontrado, pelo menos na classe >192.168.0.0. >Alguém tem alguma dica, como descobrir qual é o bendito IP dela?? >Alguma ferramenta que ajude nesta busca ?? >Que mostre os IPs, das mais variadas classes, de uma mesma rede > física?? tcpdump, ethereal, etherape PS: não abuse de ! - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info     ICQ UIN: 1967141   PGP/GPG: 0x6EF45358; fingerprint: ******************************************************** De:  Thiago Macieira Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br) descobrir endereço ip Data:  Mon, 12 Jul 2004 00:05:33 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 caio ferreira wrote: ># recover IPs >ETH0IP=`ifconfig eth0 | grep "inet addr:" | sed 's/.*inet addr://' | > cut -d ' ' -f 1` Simplificando: LC_ALL=C /sbin/ifconfig eth0 | \         sed -n '/inet addr/{s/^.*inet addr:\([^ ]*\) .*$/\1/;p;}' - --   Thiago Macieira  -  Registered Linux user #65028    thiago (AT) macieira (DOT) info     ICQ UIN: 1967141   PGP/GPG: 0x6EF45358; fingerprint: ******************************************************** De:  Cláudio Costa Responder-a:  c.costa@globo.com Para:  linux-br@bazar2.conectiva.com.br Assunto:  Re: (linux-br)Como saber meu IP na internet ? Data:  Fri, 29 Oct 2004 15:41:04 -0200 Em Qui 28 Out 2004 16:47, adilson escreveu: > Eu quero apenas saber qual é o meu endereço de IP > na internet - já que ele é dinâmico - quero descobrir > isto a cada novo número que me for dado pelo > meu ISP. Olá Adilson: Eu uso já algum tempo um script para isso. Ele não é de minha autoria , e infelizmente não lembro do nome do autor para dar-lhe os devidos créditos. Ele funciona muito bem e com alguma alteração vc pode até carregar este endereço num arquivo para utilização de algum aplicativo. Segue o script: #!/bin/sh wget -q http://www.whatismyip.com/ IP_EXTERNO=`awk '/Your ip is/ {print $4}' index.html` echo "Endereço IP externo: $IP_EXTERNO" rm index.html Viu simples e eficiente! Saudações -- Cláudio Costa c.costa@globo.com ******************************************************** De: Thiago Macieira Para: linux-br@bazar2.conectiva.com.br Cc: Eddy Martins Assunto: Re: (linux-br)verificando ips na rede Data: Tue, 5 Apr 2005 15:58:00 -0300 Eddy Martins wrote: >Bom dia lista... > >antes eu dava um comando no console q apaceria os ips q estava >utilizando a minha rede. > >mas esqueci... alguem me passa esta comando ??? findsmb ettercap tcpdump -n cat /var/lib/dhcp/dhcp.leases -- Thiago Macieira - thiago (AT) macieira (DOT) info ******************************************************** De: Thiago Macieira Para: linux-br@bazar2.conectiva.com.br Assunto: Re: (linux-br)Como saber meu IP externo no modem ADSL Data: Mon, 3 Oct 2005 23:13:32 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Rogério P. Teixeira wrote: >Fiz uma pequena adaptação, usando o "sed" em vez do "awk", porque em meu >sistema o script sugerido não funcionou: > >#------------- Inicio do script ip_externo.sh ---------------------- >#!/bin/sh >wget -q http://www.whatismyip.com/ >sed -n 4p index.html | tr ' ' '\012\' | sed -n 5p > ip_externo.txt >#------------- Final do script ip_externo.sh ----------------------- Por que não consertou o script awk ao invés disso? :-) >No entanto, creio que deve haver alguma outra maneira de saber o >endereço de gateway no shell, sem depender de um acesso externo pelo >wget. Tentei com ifconfig, router e netstat, sem sucesso. Meu servidor é >um FreeBSD com modem Parks 642R ADSL ligado no HUB, ambos com IP´s na >rede 192.168.0.x e protocolo PPPoE (IP dinâmico). Bom, visto que o IP não está na sua máquina (você disse que ela tem IP na rede 192.168.0.0), mas sim no seu modem, a sua máquina sozinha nunca vai saber o IP. Você tem as seguintes opções (e _somente_ elas): 1) usar um site externo para dizer qual é o seu IP 2) perguntar para o modem Pergunto eu: o seu modem sabe responder qual é o IP? Se sim, basta usar esse método. Alguns modem-roteadores têm um serviço de telnet para configurá-los; outros mais avançados têm ssh. O mais simples têm serviço de http. - -- Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org PGP/GPG: 0x6EF45358; fingerprint: E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358 3. Ac seo woruld wearð geborod, swá se Scieppend cwæð "Gewurde Unix" and wundor fremede and him "Unix" genemned, þæt is se rihtendgesamnung. ******************************************************** De: Manoel Pinho Para: "Rogério P. Teixeira" Cc: linux-br@bazar2.conectiva.com.br Assunto: Re: (linux-br)Como saber meu IP externo no modem ADSL Data: Tue, 04 Oct 2005 19:28:35 -0300 Rogério P. Teixeira escreveu: > Tenho um problema semelhante ao postado aqui por outro usuário, ou seja, > saber o endereço de gateway (IP externo) quando estou acessando a > Internet via ADSL com modem roteador com IP dinâmico. > > Consegui solucionar isto, em parte, com a dica postada no link abaixo: > > http://bazar2.conectiva.com.br/pipermail/linux-br/2004-October/026048.html Eu uso esse script (na realidade são linhas dentro do meu script de autenticação): #!/bin/sh IP_EXTERNO=`curl http://www.whatismyip.com/ 2> /dev/null | awk -- '/Your IP/ {print $4}'` echo "Endereço IP externo: $IP_EXTERNO" ******************************************************** De: Thiago Macieira <thiago@macieira.info> Para: linux-br@bazar2.conectiva.com.br Cc: Rogério P. Teixeira <rogerio@tecnet.inf.br> Assunto: Re: (linux-br)Como saber meu IP externo no modem ADSL Data: Tue, 4 Oct 2005 23:45:24 -0300 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 - -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Rogério P. Teixeira wrote: >>Por que não consertou o script awk ao invés disso? :-) > >Bem, primeiro, porque meu sistema é o FreeBSD e o comportamento do awk >neste ambiente é um pouquinho diferente. Por exemplo, ele não reconheceu >o comando "{print $4}", com certeza isso deve funcionar bem no Linux, >mas aqui não funcionou; segundo, porque não me considero um expert em >shell script, assim busquei outra alternativa com o sed, que funcionou. Funciona bem: $ echo 1 2 3 4 | awk '{print $4}' 4 $ uname -a FreeBSD x86-freebsd1 4.10-BETA FreeBSD 4.10-BETA #24: Tue Apr 13 11:20:20 PDT 2004 Mas cuidado que é '{print $4}' não "{print $4}" - - -- Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org PGP/GPG: 0x6EF45358; fingerprint: E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358 4. And æfter se scieppend ingelogode, he wrát "cenn", ac eala! se rihtendgesamnung andswarode "cenn: ne wát hú cennan 'eall'. Ástynt." ******************************************************** De: Jorge Godoy <godoy@metalab.unc.edu> Para: Eduardo <cucaleite@yahoo.com.br> Cc: Lista Linux-br <linux-br@bazar2.conectiva.com.br> Assunto: Re: (linux-br) Descobrir o hostname através do IP Data: Sun, 06 Aug 2006 16:18:34 -0300 Eduardo <cucaleite@yahoo.com.br> writes: > Bem... A dúvida é a seguinte: como descobrir o hostname de uma máquina > na rede local conhecendo apenas o seu IP? host endereço_ip -> isso te dará o nome configurado no DNS. > Observações: > - Rede com 80 máquinas rodando vários tipos de distro linux; > - Um servido dhcp ( Fedora core 5 ) fornecendo ip, gateway e dns; > Como os ip's são dinâmicos não tenho nenhum mapeamento ip <-> hostname e > também não irei colocar ip fixo nas máquinas; O que poderia ser feito > apenas realizando algumas modificações no servidor dhcp fazendo com que > ele fornecesse para determinadas placas ( endereço MAC ) um ip > específico. Também não uso nenhum PDC na rede ( não senti necessidade > ainda ). E o quê te impede de colocar os nomes nas máquinas e fazer com que o servidor DHCP atualize o DNS de acordo com o que receber delas? Existe essa possibilidade há anos... -- Jorge Godoy <godoy@metalab.unc.edu> De: Jorge Godoy <godoy@metalab.unc.edu> Para: Eduardo <cucaleite@yahoo.com.br> Cc: linux-br@bazar2.conectiva.com.br Assunto: Re: (linux-br) Descobrir o hostname através do IP Data: Sun, 06 Aug 2006 18:10:10 -0300 Eduardo <cucaleite@yahoo.com.br> writes: > Opa! Tudo bom? > Bem... Não entendi direito a história do DNS ser atualizado pelo DHCP. > Seria possível que você explicasse melhor? > Obrigado pela antenção. > Eduardo Dê uma olhada na documentação do DHCP e do BIND. Você vai ver como funciona e o que pode fazer. Quaisquer dúvidas, volte a postar na lista. -- Jorge Godoy <godoy@metalab.unc.edu> ******************************************************** De: Thiago Macieira <thiago@macieira.info> Para: linux-br@bazar2.conectiva.com.br Assunto: Re: (linux-br) Descobrir o hostname através do IP Data: Sun, 6 Aug 2006 21:37:48 +0200 (16:37 BRT) Eduardo wrote: >Bem... A dúvida é a seguinte: como descobrir o hostname de uma máquina >na rede local conhecendo apenas o seu IP? ssh usuario@IP hostname É o jeito mais fácil e mais garantido. Obviamente você tem que ter o sshd rodando e ter um usuário com shell ativo e senha. Se as máquinas estiverem rodando Samba, você pode usar o nmblookup para obter o nome SMB dessas máquinas. Em 99% dos casos, o nome SMB é o mesmo que o nome da máquina. >Criei um script recentemente que utiliza o nmap para scanear na rede as >máquinas que estão ativas. Esse script gera um arquivo em html que é >aberto pelo firefox mostrando as máquinas. O problema é que ele gera por >ip e seria mais interessante que ele o fizesse pelo hostname. Fui no >google e não consegui achar nada que me ajudasse, nenhum programa que >escaneasse a rede me trazendo os hostnames e não ip's. Sei que se >tivesse ip's fixos isso não seria problema algum... -- Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org ******************************************************** ********************************************************