Olá comunidade, preciso de ajuda nesse script que vou ter q rodar em um servidor CentOS.
Fiz um script que processa uma tabela de roteamento de um servidor http://www.vivaolinux.com.br/topico/Shell-Script/Ajuda-em-Script-processador-de-Tabela-de-Roteamento .
A lista é bem maior, mostrei esse pedaço pra dar uma idéia. Eis uma tabela de exemplo:
user@servidor:~/user > route -n Tabela de Roteamento IP do Kernel Destino Roteador MßscaraGen. Opþ§es MÚtrica Ref Uso Iface 10.114.32.154 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 10.114.32.153 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 152.13.49.21 192.164.34.140 255.255.255.255 UGH 2 0 0 eth0 10.114.32.26 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 152.13.174.121 192.164.34.110 255.255.255.255 UGH 2 0 0 eth0 10.114.32.25 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 152.13.49.25 192.164.34.110 255.255.255.255 UGH 2 0 0 eth0 152.13.102.5 192.164.34.110 255.255.255.255 UGH 3 0 0 eth0 152.13.174.4 192.164.34.110 255.255.255.252 UG 6 0 0 eth0 152.13.104.0 192.164.34.110 255.255.255.252 UG 6 0 0 eth0 152.13.53.4 192.164.34.140 255.255.255.252 UG 2 0 0 eth0 152.13.49.20 192.164.34.140 255.255.255.252 UG 2 0 0 eth0 152.13.49.24 192.164.34.110 255.255.255.252 UG 2 0 0 eth0 152.13.103.4 192.164.34.110 255.255.255.252 UG 4 0 0 eth0 152.13.103.0 192.164.34.110 255.255.255.252 UG 5 0 0 eth0 152.13.41.24 192.164.34.110 255.255.255.252 UG 5 0 0 eth0 152.13.41.0 192.164.34.110 255.255.255.252 UG 6 0 0 eth0 152.13.95.24 192.164.34.110 255.255.255.252 UG 5 0 0 eth0 152.13.95.20 192.164.34.110 255.255.255.252 UG 4 0 0 eth0 172.19.174.0 192.164.34.110 255.255.255.0 UG 4 0 0 eth0 192.168.49.0 192.164.34.140 255.255.255.0 UG 3 0 0 eth0 10.114.32.0 192.164.34.140 255.255.255.0 UG 6 0 0 eth0 172.19.103.0 192.164.34.110 255.255.255.0 UG 5 0 0 eth0 10.129.1.0 192.164.34.140 255.255.255.0 UG 5 0 0 eth0 172.20.104.0 192.164.34.110 255.255.255.0 UG 7 0 0 eth0 192.164.34.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.164.43.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 12.89.0.0 0.0.0.0 255.255.252.0 U 0 0 0 eth1 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 12.89.0.1 0.0.0.0 UG 0 0 0 eth1 0.0.0.0 192.164.34.180 0.0.0.0 UG 1 0 0 eth0 user@servidor:~/user >
Fiz um script que lê essa tabela e gera 02 arquivos http://www.vivaolinux.com.br/topico/Shell-Script/Ajuda-em-Script-processador-de-Tabela-de-Roteamento com a lista de IPs destino e IPs dos roteadores. Eis o script:
#!/bin/bash
route -n > tabela-roteamento.txt
touch lista-ips-destino.txt touch lista-ips-roteadores.txt
echo "" > lista-ips-destino.txt echo "" >lista-ips-roteadores.txt
cat tabela-roteamento.txt | while read linha; do
ipdestino=`echo $linha | awk {'print $1'}` iproteador=`echo $linha | awk {'print $2'}` mascara=`echo $linha | awk {'print $3'}`
echo "$ipdestino" >> lista-ips-destino.txt echo "$iproteador" >> lista-ips-roteadores.txt
done
Preciso melhorar esse script em alguns aspectos:
1) Preciso ignorar as duas primeiras linhas; só quero IPs e mais nada. Como faz isso em shell?
2) Depois que o arquivo é formado, gostaria de classificar o arquivo pelos IPs, tipo menores primeiros e maiores no fim do arquivo. Como fazer ?
3) Preciso criar um arquivo de IPs destino no formato IP/numero de bits da mascara.
Isso, porque vou ter que utilizar esse formato no comando nmap pra testar se essas máquinas estão ativas na rede. Exemplo: 192.168.45.0/24 ou 192.168.44.11/32.
Para isso precisaria converter a mascara em numero de bits, tipo 255.255.255.0 -> 24, 255.255.255.255 -> 32, etc. Como posso fazer?
4) Pela tabela acima dá pra vê que existem apenas 04 roteadores. Como posso obter uma lista de roteadores com IPs não repetidos?
1 - 192.164.34.110 2 - 192.164.34.140 3 - 20.89.0.1 4 - 192.164.34.180
5) Como ignorar os IPs "0.0.0.0" ?
Agradeço a atenção de todos e estou no aguardo on-line. Att.
Newton Teixeira do Nascimento Junior Analista de Sistemas - CMAO
<html> <body> <font face = "arial" size = "1" color = "#000080">Aviso:<br>"O emitente desta mensagem é responsável por seu conteúdo e endereçamento. Cabe ao destinatário cuidar quanto ao tratamento adequado. Sem a devida autorização, a divulgação, a reprodução, a distribuição ou qualquer outra ação em desconformidade com as normas internas da ELETRONORTE S/A são proibidas e passíveis de sanção disciplinar, cível e criminal. Esta mensagem pode ser monitorada". </font> </body> </html>
alguns comandos que poderao te ajudar
uniq -> nao mostra valores repetidos sort -> ordena os numeros
Newton Teixeira do Nascimento Júnior wrote:
Olá comunidade, preciso de ajuda nesse script que vou ter q rodar em um servidor CentOS.
Fiz um script que processa uma tabela de roteamento de um servidor http://www.vivaolinux.com.br/topico/Shell-Script/Ajuda-em-Script-processador-de-Tabela-de-Roteamento.
A lista é bem maior, mostrei esse pedaço pra dar uma idéia. Eis uma tabela de exemplo:
user@servidor:~/user > route -n Tabela de Roteamento IP do Kernel Destino Roteador MßscaraGen. Opþ§es MÚtrica Ref Uso Iface 10.114.32.154 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 10.114.32.153 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 152.13.49.21 192.164.34.140 255.255.255.255 UGH 2 0 0 eth0 10.114.32.26 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 152.13.174.121 192.164.34.110 255.255.255.255 UGH 2 0 0 eth0 10.114.32.25 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 152.13.49.25 192.164.34.110 255.255.255.255 UGH 2 0 0 eth0 152.13.102.5 192.164.34.110 255.255.255.255 UGH 3 0 0 eth0 152.13.174.4 192.164.34.110 255.255.255.252 UG 6 0 0 eth0 152.13.104.0 192.164.34.110 255.255.255.252 UG 6 0 0 eth0 152.13.53.4 192.164.34.140 255.255.255.252 UG 2 0 0 eth0 152.13.49.20 192.164.34.140 255.255.255.252 UG 2 0 0 eth0 152.13.49.24 192.164.34.110 255.255.255.252 UG 2 0 0 eth0 152.13.103.4 192.164.34.110 255.255.255.252 UG 4 0 0 eth0 152.13.103.0 192.164.34.110 255.255.255.252 UG 5 0 0 eth0 152.13.41.24 192.164.34.110 255.255.255.252 UG 5 0 0 eth0 152.13.41.0 192.164.34.110 255.255.255.252 UG 6 0 0 eth0 152.13.95.24 192.164.34.110 255.255.255.252 UG 5 0 0 eth0 152.13.95.20 192.164.34.110 255.255.255.252 UG 4 0 0 eth0 172.19.174.0 192.164.34.110 255.255.255.0 UG 4 0 0 eth0 192.168.49.0 192.164.34.140 255.255.255.0 UG 3 0 0 eth0 10.114.32.0 192.164.34.140 255.255.255.0 UG 6 0 0 eth0 172.19.103.0 192.164.34.110 255.255.255.0 UG 5 0 0 eth0 10.129.1.0 192.164.34.140 255.255.255.0 UG 5 0 0 eth0 172.20.104.0 192.164.34.110 255.255.255.0 UG 7 0 0 eth0 192.164.34.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.164.43.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 12.89.0.0 0.0.0.0 255.255.252.0 U 0 0 0 eth1 169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth1 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 12.89.0.1 0.0.0.0 UG 0 0 0 eth1 0.0.0.0 192.164.34.180 0.0.0.0 UG 1 0 0 eth0 user@servidor:~/user >
Fiz um script que lê essa tabela e gera 02 arquivos http://www.vivaolinux.com.br/topico/Shell-Script/Ajuda-em-Script-processador-de-Tabela-de-Roteamento com a lista de IPs destino e IPs dos roteadores. Eis o script:
#!/bin/bash
route -n > tabela-roteamento.txt
touch lista-ips-destino.txt touch lista-ips-roteadores.txt
echo "" > lista-ips-destino.txt echo "" >lista-ips-roteadores.txt
cat tabela-roteamento.txt | while read linha; do
ipdestino=`echo $linha | awk {'print $1'}` iproteador=`echo $linha | awk {'print $2'}` mascara=`echo $linha | awk {'print $3'}`
echo "$ipdestino" >> lista-ips-destino.txt echo "$iproteador" >> lista-ips-roteadores.txt
done
Preciso melhorar esse script em alguns aspectos:
- Preciso ignorar as duas primeiras linhas; só quero IPs e mais nada.
Como faz isso em shell?
- Depois que o arquivo é formado, gostaria de classificar o arquivo
pelos IPs, tipo menores primeiros e maiores no fim do arquivo. Como fazer ?
- Preciso criar um arquivo de IPs destino no formato IP/numero de
bits da mascara.
Isso, porque vou ter que utilizar esse formato no comando nmap pra testar se essas máquinas estão ativas na rede. Exemplo: 192.168.45.0/24 ou 192.168.44.11/32.
Para isso precisaria converter a mascara em numero de bits, tipo 255.255.255.0 -> 24, 255.255.255.255 -> 32, etc. Como posso fazer?
- Pela tabela acima dá pra vê que existem apenas 04 roteadores. Como
posso obter uma lista de roteadores com IPs não repetidos?
1 - 192.164.34.110 2 - 192.164.34.140 3 - 20.89.0.1 4 - 192.164.34.180
- Como ignorar os IPs "0.0.0.0" ?
Agradeço a atenção de todos e estou no aguardo on-line. Att.
*Newton Teixeira do Nascimento Junior Analista de Sistemas - CMAO
Aviso: "O emitente desta mensagem é responsável por seu conteúdo e endereçamento. Cabe ao destinatário cuidar quanto ao tratamento adequado. Sem a devida autorização, a divulgação, a reprodução, a distribuição ou qualquer outra ação em desconformidade com as normas internas da ELETRONORTE S/A são proibidas e passíveis de sanção disciplinar, cível e criminal. Esta mensagem pode ser monitorada".
CentOS-pt-br mailing list CentOS-pt-br@centos.org http://lists.centos.org/mailman/listinfo/centos-pt-br
route -n |tr -d '[:alpha:]'|awk '{print $1 " " $2}'|sort|uniq
alguns comandos que poderao te ajudar
uniq -> nao mostra valores repetidos sort -> ordena os numeros
Newton Teixeira do Nascimento Júnior wrote:
Olá comunidade, preciso de ajuda nesse script que vou ter q
rodar em
um servidor CentOS.
Fiz um script que processa uma tabela de roteamento de um servidor
A lista é bem maior, mostrei esse pedaço pra dar uma idéia. Eis uma tabela de exemplo:
user@servidor:~/user > route -n Tabela de Roteamento IP do Kernel Destino Roteador MßscaraGen. Opþ§es MÚtrica Ref Uso Iface 10.114.32.154 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 10.114.32.153 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 152.13.49.21 192.164.34.140 255.255.255.255 UGH 2 0 0 eth0 10.114.32.26 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 152.13.174.121 192.164.34.110 255.255.255.255 UGH 2 0 0 eth0 10.114.32.25 192.164.34.140 255.255.255.255 UGH 6 0 0 eth0 152.13.49.25 192.164.34.110 255.255.255.255 UGH 2 0 0 eth0 152.13.102.5 192.164.34.110 255.255.255.255 UGH 3 0 0 eth0 152.13.174.4 192.164.34.110 255.255.255.252 UG 6 0 0 eth0
152.13.104.0
192.164.34.110 255.255.255.252 UG 6 0 0 eth0 152.13.53.4 192.164.34.140 255.255.255.252 UG 2 0 0 eth0
152.13.49.20
192.164.34.140 255.255.255.252 UG 2 0 0 eth0 152.13.49.24 192.164.34.110 255.255.255.252 UG 2 0 0 eth0 152.13.103.4 192.164.34.110 255.255.255.252 UG 4 0 0 eth0
152.13.103.0
192.164.34.110 255.255.255.252 UG 5 0 0 eth0 152.13.41.24 192.164.34.110 255.255.255.252 UG 5 0 0 eth0
152.13.41.0
192.164.34.110 255.255.255.252 UG 6 0 0 eth0 152.13.95.24 192.164.34.110 255.255.255.252 UG 5 0 0 eth0
152.13.95.20
192.164.34.110 255.255.255.252 UG 4 0 0 eth0 172.19.174.0 192.164.34.110 255.255.255.0 UG 4 0 0 eth0 192.168.49.0
192.164.34.140
255.255.255.0 UG 3 0 0 eth0 10.114.32.0 192.164.34.140
255.255.255.0
UG 6 0 0 eth0 172.19.103.0 192.164.34.110 255.255.255.0 UG
5 0 0 eth0
10.129.1.0 192.164.34.140 255.255.255.0 UG 5 0 0 eth0 172.20.104.0 192.164.34.110 255.255.255.0 UG 7 0 0 eth0 192.164.34.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.164.43.0 0.0.0.0
255.255.255.0 U 0 0 0
eth0 12.89.0.0 0.0.0.0 255.255.252.0 U 0 0 0 eth1
169.254.0.0 0.0.0.0
255.255.0.0 U 0 0 0 eth1 127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo 0.0.0.0 12.89.0.1 0.0.0.0 UG 0 0 0 eth1 0.0.0.0
192.164.34.180 0.0.0.0
UG 1 0 0 eth0 user@servidor:~/user >
Fiz um script que lê essa tabela e gera 02 arquivos
<http://www.vivaolinux.com.br/topico/Shell-Script/Ajuda-em-Script-proc
essador-de-Tabela-de-Roteamento> com a lista de IPs destino
e IPs dos
roteadores. Eis o script:
#!/bin/bash
route -n > tabela-roteamento.txt
touch lista-ips-destino.txt touch lista-ips-roteadores.txt
echo "" > lista-ips-destino.txt echo "" >lista-ips-roteadores.txt
cat tabela-roteamento.txt | while read linha; do
ipdestino=`echo $linha | awk {'print $1'}` iproteador=`echo
$linha |
awk {'print $2'}` mascara=`echo $linha | awk {'print $3'}`
echo "$ipdestino" >> lista-ips-destino.txt echo "$iproteador" >> lista-ips-roteadores.txt
done
Preciso melhorar esse script em alguns aspectos:
- Preciso ignorar as duas primeiras linhas; só quero IPs e
mais nada.
Como faz isso em shell?
- Depois que o arquivo é formado, gostaria de classificar
o arquivo
pelos IPs, tipo menores primeiros e maiores no fim do arquivo. Como fazer ?
- Preciso criar um arquivo de IPs destino no formato IP/numero de
bits da mascara.
Isso, porque vou ter que utilizar esse formato no comando nmap pra testar se essas máquinas estão ativas na rede. Exemplo: 192.168.45.0/24 ou 192.168.44.11/32.
Para isso precisaria converter a mascara em numero de bits, tipo 255.255.255.0 -> 24, 255.255.255.255 -> 32, etc. Como posso fazer?
- Pela tabela acima dá pra vê que existem apenas 04
roteadores. Como
posso obter uma lista de roteadores com IPs não repetidos?
1 - 192.164.34.110 2 - 192.164.34.140 3 - 20.89.0.1 4 - 192.164.34.180
- Como ignorar os IPs "0.0.0.0" ?
Agradeço a atenção de todos e estou no aguardo on-line. Att.
*Newton Teixeira do Nascimento Junior Analista de Sistemas - CMAO
Aviso: "O emitente desta mensagem é responsável por seu conteúdo e endereçamento. Cabe ao destinatário cuidar quanto ao tratamento adequado. Sem a devida autorização, a divulgação, a reprodução, a distribuição ou qualquer outra ação em desconformidade com
as normas
internas da ELETRONORTE S/A são proibidas e passíveis de sanção disciplinar, cível e criminal. Esta mensagem pode ser monitorada".
--
CentOS-pt-br mailing list CentOS-pt-br@centos.org http://lists.centos.org/mailman/listinfo/centos-pt-br
-- Sds.
Alexandre Jeronimo Correa
Onda Internet www.onda.net.br
IPV6 Ready ! www.ipv6.onda.net.br
CentOS-pt-br mailing list CentOS-pt-br@centos.org http://lists.centos.org/mailman/listinfo/centos-pt-br
Preciso melhorar esse script em alguns aspectos:
- Preciso ignorar as duas primeiras linhas; só quero IPs e mais nada.
Como faz isso em shell?
route -n | grep eth > tabela-roteamento.txt
- Depois que o arquivo é formado, gostaria de classificar o arquivo pelos
IPs, tipo menores primeiros e maiores no fim do arquivo. Como fazer ?
sort -n < lista-ips-destino.txt
- Preciso criar um arquivo de IPs destino no formato IP/numero de bits da
mascara.
dependendo da versao do ipcalc pode usar $ ipcalc 192.168.1.1 255.255.255.240 | grep Network e pegar o campo 2
- Pela tabela acima dá pra vê que existem apenas 04 roteadores. Como
posso obter uma lista de roteadores com IPs não repetidos?
sort -u
- Como ignorar os IPs "0.0.0.0" ?
route -n | grep eth | grep -v 0.0.0.0 > tabela-roteamento.txt
Agradeço a atenção de todos e estou no aguardo on-line. Att.
Newton Teixeira do Nascimento Junior Analista de Sistemas - CMAO
[]s, !3runo
discuss-pt-br@lists.centos.org