Resultados 1 al 5 de 5

Shellscript parametros de un archivo a comandos

  1. #1 Shellscript parametros de un archivo a comandos 
    Colaborador HH
    Fecha de ingreso
    Jun 2006
    Ubicación
    Uruguay
    Mensajes
    1.451
    Descargas
    11
    Uploads
    0
    Buenas.. estoy intentnado hacer lo siguiente,

    Tengo un archivo donde tengo 63 nombres de hosts, quiero levantar un pedido al administrador del DHCP, que me reserve las direcciones IP de estos 63 hosts, a travez de su mac address.

    lo que tengo pensado hacer es lo siguiente script:

    Código:
    for ((i=1;i<63;i++)); do
    	arp $(head -n $i host.txt |tail -n 1) | awk '/Cyp/ {$1 $3}' > host_mac.txt
    	
    done;
    Les pongo una salida y los intentos que hice:

    Código:
    Cypuysrv456:~# head -n 1 host.txt |tail -n 1
    CypUYNB106
    
    
    Cypuysrv456:~# ping  $(head -n 1 host.txt |tail -n 1)
    ping: unknown host CypUYNB106
    
    
    Cypuysrv456:~# ping CypUYNB106
    PING CypUYNB106.hh.Cyp.com (172.Z.X.Y) 56(84) bytes of data.
    64 bytes from Cypuynb106.hh.Cyp.com (172.Z.X.Y): icmp_seq=1 ttl=128 time=0.333 ms
    64 bytes from Cypuynb074.hh.Cyp.com (172.Z.X.Y): icmp_seq=2 ttl=128 time=0.276 ms
    ^C
    --- CypUYNB106.hh.Cyp.com ping statistics ---
    2 packets transmitted, 2 received, 0% packet loss, time 999ms
    rtt min/avg/max/mdev = 0.276/0.304/0.333/0.033 ms
    
    
    Cypuysrv456:~#
    Se los comento más o menos:

    Código:
    Cypuysrv456:~# head -n 1 host.txt |tail -n 1
    CypUYNB106
    Voy tomando de a un los nombres del host, el sistema devuelve esa salida.


    Código:
    Cypuysrv456:~# ping  $(head -n 1 host.txt |tail -n 1)
    ping: unknown host CypUYNB106
    Maldición! no reconoce el host, tal vez no puede resolver el nombre.

    Código:
    Cypuysrv456:~# ping CypUYNB106
    PING CypUYNB106.hh.Cyp.com (172.Z.X.Y) 56(84) bytes of data.
    64 bytes from Cypuynb106.hh.Cyp.com (172.Z.X.Y): icmp_seq=1 ttl=128 time=0.333 ms
    64 bytes from Cypuynb074.hh.Cyp.com (172.Z.X.Y): icmp_seq=2 ttl=128 time=0.276 ms
    ^C
    --- CypUYNB106.hh.Cyp.com ping statistics ---
    2 packets transmitted, 2 received, 0% packet loss, time 999ms
    rtt min/avg/max/mdev = 0.276/0.304/0.333/0.033 ms
    lo pudo resolver!

    ¿ por qué antes no ?

    Minetras escribia esto, decidi cambiando por el nombre completo del host:

    CypUYNB106.hh.Cyp.com

    Ya que hace unos días logre unir al dominio ( active directory ) este server gnu/linux.

    ¿ Alguna idea de por qué no reconoce este nombre y lo resuelve ?

    Código:
    # cat /etc/resolv.conf
    domain hh.Cyp.com
    search hh.Cyp.com
    nameserver 172.Z.X.F
    nameserver 172.Z.W.R
    Saludos,
    Louis Armstrong le dice a Ella Fitzgerald
    "take another drink of wine, and maybe you change your mind"
    Citar  
     

  2. #2  
    Colaborador HH
    Fecha de ingreso
    Jun 2006
    Ubicación
    Uruguay
    Mensajes
    1.451
    Descargas
    11
    Uploads
    0
    Código:
    for ((i=1;i<10;i++)) ; do echo $(head -n $i hosts.txt  | tail -1| nawk '{print $2}') | xargs -n 1 arp; done

    de esa forma anduvo.. pero no muy bien, y no pude conseguir todas las macs que queria

    En fin.. les paso la solucion.
    Saludos!
    Louis Armstrong le dice a Ella Fitzgerald
    "take another drink of wine, and maybe you change your mind"
    Citar  
     

  3. #3  
    Moderador Global
    Fecha de ingreso
    Aug 2005
    Mensajes
    6.279
    Descargas
    7
    Uploads
    0
    Cita Iniciado por Cypress Ver mensaje
    Código:
    for ((i=1;i<10;i++)) ; do echo $(head -n $i hosts.txt  | tail -1| nawk '{print $2}') | xargs -n 1 arp; done
    Una forma de reducir el script creo que podría ser:

    Código:
    while read -r h; do
        arp $(echo $h | awk {'print $2'})
    done < hosts.txt
    Pero en ese caso `arp $HOST` sólo te mostraría las entradas que ya hay en la caché de ARP del sistema. El problema es que es probable que no estén en la caché algunas entradas conocidas por el sistema (hosts de /etc/hosts, etc).

    Por ejemplo, suponiendo que el equipo tiene una interfaz de red configurada con la dirección IP 192.168.1.30. Al hacer algo como esto:

    Código:
    nmap -sP 192.168.1.0/24 2> /dev/null > /dev/null
    arp | grep -v 'incomplete'
    podrías obtener más información acerca de los equipos conocidos por el sistema.


    Salu2

    . . . . . . . . . . . . . . . . . . . .
    [[ NORMAS DEL FORO ]]
    . . . . . . . . . . . . . . . . . . . .
    __________
    Citar  
     

  4. #4  
    Colaborador HH
    Fecha de ingreso
    Jun 2006
    Ubicación
    Uruguay
    Mensajes
    1.451
    Descargas
    11
    Uploads
    0
    Ah, pense que arp IP, generaba un paquete arp request.

    Y luego lo ponia en el arp cache por un X tiempo.
    --
    El tema es que si hago un ping IP, como son tantas direcciones de IP, se borran de la tabla arp.

    se puede generar un arp request por si solo?

    Si no mal recuerdo los arp request, se hacen por brodcast, y si tengo un router en el medio, no podré obtener la ARP del host final :-/

    pasa que las redes de acá, están mal hechas y tenemos dos redes:

    172.X.Y.0/24
    172.X.Z.0/24

    Y por el medio hay un router, entonces no puedo acceder a las redes 172.X.Z.0/24 si estoy en la 172.X.Y.0/24 a travez de un paquete arp_request

    De todas formas en este momento ya solucione el tema.. haciendo la clasica envio de mensajes a la lista de correo del trabajo.

    Pero bueno.. la otra solución era más prolija.

    Salud2
    Louis Armstrong le dice a Ella Fitzgerald
    "take another drink of wine, and maybe you change your mind"
    Citar  
     

  5. #5  
    Moderador Global
    Fecha de ingreso
    Aug 2005
    Mensajes
    6.279
    Descargas
    7
    Uploads
    0
    Hombre, desde una red de clase C no podrás obtener respuestas arp desde la otra. La caché de ARP se pobla con simples peticiones icmp ping, ya que éstas generan las peticiones arp necesarias.

    Las peticiones ARP se pueden forjar. Por ejemplo, se suelen forjar este tipo de peticiones en ciertos ataques a redes inalámbricas. Una herramienta bastante conocida es arpforge, que viene incluido en la suite de aircrack-ng.


    Salu2


    Keep on Rollin'

    . . . . . . . . . . . . . . . . . . . .
    [[ NORMAS DEL FORO ]]
    . . . . . . . . . . . . . . . . . . . .
    __________
    Citar  
     

Temas similares

  1. Pasar parámetros de query en la URL de una Web aspx
    Por freich en el foro PROGRAMACION WEB
    Respuestas: 1
    Último mensaje: 03-12-2010, 19:59
  2. Intrusion mediante parametros "default" de un ftp
    Por Zelos en el foro INTRUSION
    Respuestas: 0
    Último mensaje: 01-05-2009, 20:52
  3. Parámetros de Seguridad de SAP
    Por LUK en el foro NOTICIAS
    Respuestas: 0
    Último mensaje: 26-02-2009, 20:32
  4. Respuestas: 1
    Último mensaje: 17-03-2008, 11:36
  5. Respuestas: 4
    Último mensaje: 09-11-2007, 03:12

Marcadores

Marcadores