Minha topologia de rede:
Mac 192.168.1.4 | internet - netcom 192.168.1.1-192.168.1.253 linux 192.168.2.1-192.168.2.2 windows
- netcom é um gateway NAT para internet
- netcom tem uma rota estática para 192.168.2.0/24 via 192.168.1.253
- mac tem uma rota estática para 192.168.2.0/24 via 192.168.1.253
- mac tem um gw padrão de 192.168.1.1
- linux tem gw padrão de 192.168.1.1
- linux tem encaminhamento de porta e firewall desabilitado
- o windows tem um gw padrão de 192.168.2.1
- Mac pode executar ping em Windows, Linux e Netcom
- linux pode executar ping no Windows, Mac e Netcom
- o windows pode executar ping no mac e no linux, MAS NÃO no netcom
- netcom pode executar ping em mac e linux, MAS NÃO em windows
por último, executei o tcpdump enquanto tentava fazer ping no netcom do Windows (e vice-versa) e mostra que os pacotes estão passando pelas interfaces corretas, alguma ideia do que poderia estar errado?
ping do netcom para o windows mostra os seguintes logs:
ping no netcom:
>ping 192.168.2.2 aplicativo: echo 1 > /var/ping_dns_status PING 192.168.2.2 (192.168.2.2): 56 bytes de dados --- Estatísticas de ping 192.168.2.2 --- 4 pacotes transmitidos, 0 pacotes recebidos, 100% de perda de pacotes
tcpdump no linux:
00:03:12.441283 Em 18:f1:45:75:2c:24 ethertype IPv4 (0x0800), comprimento 100: 192.168.1.1 > 192.168.2.2: solicitação de eco ICMP, id 5784, seq 0, comprimento 64 00:03:12.441341 Saída 00:0c:29:0b:03:c3 ethertype IPv4 (0x0800), comprimento 100: 192.168.1.1 > 192.168.2.2: solicitação de eco ICMP, id 5784, seq 0, comprimento 64 00:03:12.441829 Em 00:0c:29:e9:17:84 ethertype IPv4 (0x0800), comprimento 100: 192.168.2.2 > 192.168.1.1: resposta de eco ICMP, id 5784, seq 0, comprimento 64 00:03:12.441850 Saída 00:0c:29:0b:03:b9 ethertype IPv4 (0x0800), comprimento 100: 192.168.2.2 > 192.168.1.1: resposta de eco ICMP, id 5784, seq 0, comprimento 64
Wirehark no Windows:
192.168.1.1 192.168.2.2 ICMP 98 Echo (ping) id de solicitação = 0x1698, seq = 0/0, ttl = 63 (resposta em 2548) 192.168.2.2 192.168.1.1 ICMP 98 Echo (ping) id de resposta = 0x1698, seq = 0/0, ttl = 128 (solicitação em 2547)
Responder1
na máquina Linux, o encaminhamento de pacotes está desabilitado por padrão. Tente executar comandos:
iptables -A FORWARD -i eth1 -j ACEITAR
iptables -A FORWARD -o eth1 -j ACEITAR
(e os mesmos dois comandos em outras interfaces de rede em vez de eth1)
sysctl -w net.ipv4.ip_forward=1
e adicione ao /etc/sysctl.conf
net.ipv4.ip_forward = 0