Estou tentando configurar minhas rotas de uma maneira que permita a conexão com a caixa do Vagrant na demonstração Solum .
Minha tabela de roteamento contém, sem limitação, as seguintes rotas:
$ route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.0.0 0.0.0.0 255.255.255.0 U 9 0 0 wlan0
192.168.76.0 192.168.76.2 255.255.255.0 UG 0 0 0 vboxnet0
192.168.76.0 0.0.0.0 255.255.255.0 U 0 0 0 vboxnet0
Suspeito que a terceira rota (gerada automaticamente na inicialização da caixa do Vagrant) esteja interferindo na segunda rota (criada manualmente), por isso estou tentando excluí-la.
No entanto, usando um dos seguintes comandos
$ sudo route del 192.168.76.0 gw 0.0.0.0
$ sudo route del 192.168.76.0
retorna:
SIOCDELRT: No such process
que geralmente aparece quando route
não é possível encontrar a rota.
Por outro lado, usando
$ sudo route del 192.168.76.0/24 gw 0.0.0.0
$ sudo route del 192.168.76.0/24
rendimentos:
route: netmask 000000ff doesn't make sense with host route
Usage: route [-nNvee] [-FC] [<AF>] List kernel routing tables
(rest of usage)
O que estou fazendo errado? Existe algum motivo para não remover essa rota? Estou errado ao supor que isso interfere com o que eu montei?
(Estou usando o Ubuntu 14.04+).
command-line
bash
routing
Dragomok
fonte
fonte
route del -net 192.168.76.0
. Caso contrário, ele pensará que você está tentando excluir uma rota para um único host.route add -net 192.168.78.0/24 192.168.76.2
que faz muito mais sentido./24
ao final do comando, ele funcionará. Obrigado. Se você postar uma resposta, talvez com alguma elaboração no interesse das pessoas que pesquisarão esta questão no futuro, eu a aceitarei.Respostas:
Para excluir uma única rota de uma tabela de rotas, é necessário especificar parâmetros suficientes para que uma correspondência exclusiva com uma das rotas possa ser feita.
Se você deseja excluir uma sub-rede inteira (ao contrário de um único host), use o
-net
sinalizador e algumas indicações do escopo do endereço de rede, ou seja, onetmask
parâmetro (por exemplo, 255.255.255.0) ou um número como / 24 (o que significa que os primeiros 24 bits são o número da rede e os 8 restantes são usados para hosts). No seu caso, ambossudo route del -net 192.168.76.0/24
e
sudo route del -net 192.168.76.0 netmask 255.255.255.0
teria funcionado.
(obrigado a @nephente por adições úteis)
fonte
dev vboxnet0
->sudo route del -net 192.168.76.0 netmask 255.255.255.0 dev vboxnet0
O comentário de Jos está quase correto:
$ sudo route del -net 192.168.76.0/24
remove a rota.fonte