ip route salvar binário ou ascii?

2

De acordo com ip-route(8) :

ip route save
save routing table information to stdout This command behaves like ip route show except that the output is raw data suitable for passing to ip route restore.

ip route restore
restore routing table information from stdin This command expects to read a data stream as returned from ip route save. It will attempt to restore the routing table information exactly as it was at the time of the save, so any translation of information in the stream (such as device indexes) must be done first. Any existing routes are left unchanged. Any routes specified in the data stream that already exist in the table will be ignored.

Mas quando eu uso ip route save > mydump , ele retorna binário ao contrário da página de manual, é um bug? Ou eu uso errado?

    
por PersianGulf 09.10.2015 / 01:09

3 respostas

0

Se você quiser despejar seu RT, por favor, considere, ip route save fornecer stdout e stderr, então você tem que usar:

ip route save 1> dump

Se você não usar o comando 1> ip, redirecione stderr e stdout para dump.
OBSERVAÇÃO: Se você tiver um gateway padrão em seu despejo, adicione sua rede manualmente, como:

ip route add 192.168.1.0/24 dev eth0

Então:

ip route restore < dump

Mas por que com a mão? Porque a primeira linha de dump é dafualt gw e você recebe o seguinte erro:

RTNETLINK answers: Network is unreachable
    
por 10.10.2015 / 00:38
2

É binário. Um indicador definitivo disso é o fato de que ele não permitirá que você copie os dados binários para stdout, com uma mensagem de erro:

# ip route save
Not sending binary stream to stdout
Dump terminated
    
por 09.10.2015 / 01:41
2

O formato de ip route save é binário, mas, no caso do Linux, é idêntico a rtnetlink (7) . Existem muitas ferramentas para ler / escrever / manipular esses arquivos, uma delas é Python pyroute2 .

    
por 28.10.2017 / 20:42

Tags