No Windows 7, como adiciono uma rota incorreta para que minhas conexões TCP já estabelecidas sejam interrompidas

2

Digamos que temos 3 máquinas com Windows 7, A, B, C, todas na mesma sub-rede.

A - 192.168.1.2

B - 192.168.1.3 - ninguém tem esse ip, não existe na sub-rede

C - 192.168.1.4

A execução do tracert 192.168.1.4 em A mostra que ele vai diretamente para C.

Digamos que eu queira rotear o tráfego de A para C por meio de B (o ip inexistente, para forçar as conexões TCP existentes de A para C a serem soltas ). No XP, tudo o que tenho a fazer é adicionar uma rota em A assim:

route add 192.168.1.4 192.168.1.3

Depois de fazer isso, depois de um tempo, minha conexão já estabelecida acabará quebrando. Como esperado, o ping 192.168.1.4 não funciona mais.

Isso não funciona no Windows 7, depois de adicionar essa rota, eu ainda sou capaz de acessar 192.168.1.4 via ping e o tracert mostra que ele vai diretamente de 192.168.1.2 para 192.168.1.4.

Existe uma maneira de fazer isso no Windows 7, como costumava funcionar no XP?

Obrigado

    
por user86000 15.06.2011 / 21:02

2 respostas

1

Deve funcionar exatamente da mesma maneira, para mim! Talvez quando você configurou você não verificou a valva métrica? Uma entrada de rota que tenha um valor de métrica mais baixo terá precedência sobre outro enrty. Além disso, seu comando está errado de qualquer forma e nem funcionaria no XP.

Deve ser o seguinte:

route add 192.168.1.4 mask 255.255.255.255 192.168.1.3 metric 1

talvez você tenha digitado (na máquina win 7)

route add 192.168.1.4 mask 255.255.255.0 192.168.1.3 metric whatever

Tecnicamente, essa rede de destino (192.16.1.4), por causa da máscara de sub-rede 255.255.255.0, é exatamente igual a:

route add 192.168.1.0 mask 255.255.255.0 on-link metric

que, como sabemos, é uma entrada de rota padrão. Agora ele tem duas entradas de roteamento para exatamente o mesmo destino com (possivelmente) o mesmo valor de métrica, qual delas deveria escolher? Não há como escolher um método preferido sobre o outro. O que acontece a seguir eu não tenho certeza. Ele irá escolher aleatoriamente qualquer uma das rotas (carga balanceada, por assim dizer) ou escolherá a uma conexão o tempo todo, pois esta entrada implica que o destino está mais próximo (diretamente ligado). De qualquer forma, isso não importa, já que você configurou mal as rotas. A maneira correta seria adicionar a entrada que eu publiquei pela primeira vez.

EDIT: Acabei de testar este cenário exato que você tem no meu PC com Windows 7 e funcionou.

    
por 28.06.2011 / 15:15
1

Não funcionou para mim porque eu estava adicionando uma rota para forçá-lo a ir para um endereço de destino que não existe. Eu faço isso o tempo todo no XP para que eu possa obter conexões para quebrar para testes, mas no Windows 7 isso não funciona.

Adicionando uma rota como: route add 192.168.1.4 192.168.1.3 onde o destino existe, funciona bem, o que me leva a pensar que o Windows 7 é mais inteligente que o XP na medida em que ele pode escolher uma rota diferente se o destino de a rota que eu adicionei não existe.

No XP, uma vez que eu adiciono uma rota para ir a um ip de destino que não existe, não consigo mais pingar o ip de destino. Portanto, a pergunta deveria ser: no Windows 7, como adiciono uma rota incorreta para que minha conexão já estabelecida seja interrompida.

A resposta é:

No passado, no XP, eu apenas adicionava uma rota para ir a um IP que não existe, mas no Windows 7 eu preciso adicionar uma rota para ir para um IP que existe, mas não posso rotear e o efeito deve seja o mesmo.

    
por 30.06.2011 / 23:38