Comando Bash para converter endereços IP em sua forma “reversa”?

2

Quando executo o nslookup em um IP (todos esses são exemplos)

nslookup 192.168.1.123

Saída atual:

411.311.211.111

Saída desejada:

111.211.311.411

Eu tenho um script que funciona apenas para ver se há uma maneira mais eficiente ou um comando interno do nslookup.

Obrigado

    
por Roboman1723 05.12.2014 / 20:05

3 respostas

3
echo 411.311.211.111 | awk -F. '{print ".""." "."}''

Saída:

111.211.311.411

ou

echo 411.311.211.111 | awk -F. '{OFS="."; print ,,,}'
    
por Cyrus 05.12.2014 / 21:47
1

Aqui está uma função nativa. Chame como reverseip 12.34.56.78 para imprimir 78.56.34.12 . Chame como reversed=$(reverseip 12.34.56.78) para capturar a saída em uma variável.

reverseip () {
    local IFS
    IFS=.
    set -- 
    echo ...
}
    
por tripleee 10.12.2014 / 09:43
0

Usando sed :

sed -r 's/([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3}).([0-9]{1,3})/.../'

Corresponda o endereço IP e imprima do último para o primeiro (reverso)

    
por αғsнιη 10.12.2014 / 10:14