[FUG-BR] Problemas estabelecendo manualmente uma conexão tcp/ip

Victor Hugo Bilouro bilouro em gmail.com
Sexta Maio 30 20:52:04 BRT 2008


Fala pessoal,

Então, estou andando com o projeto do GSoC (TCP/IP Regression Test Suite)...
O projeto vai testar a conformidade do protocolo com as RFCs e também
fará verificação se bugs já resolvidos voltaram a acontecer
(regression).

Seguinte, estou fazendo o handshake manualmente, ou seja, criando e
injetando os pacotes na rede.... e "teoricamente" tudo esta OK, porém,
o FreeBSD após os 3 passos do handshake (3 way handshake) esta me
enviando um RESET.

Dêem uma olhada no tcpdump -ied0 -S -vv tcp

08:58:21.302052 IP (tos 0x0, ttl 64, id 55136, offset 0, flags [none],
proto TCP (6), length 40) 192.168.1.10.53639 > 192.168.1.20.22022: S,
cksum 0x2a4d (correct), 3204258715:3204258715(0) win 65535

08:58:21.302125 IP (tos 0x0, ttl 64, id 411, offset 0, flags [DF],
proto TCP (6), length 44) 192.168.1.20.22022 > 192.168.1.10.53639: S,
cksum 0xba99 (correct), 400703492:400703492(0) ack 3204258716 win
65535 <mss 1460>

08:58:21.697561 IP (tos 0x0, ttl 64, id 55137, offset 0, flags [none],
proto TCP (6), length 40) 192.168.1.10.53639 > 192.168.1.20.22022: .,
cksum 0xacf0 (correct), 0:0(0) ack 400703493 win 65535

08:58:21.697632 IP (tos 0x0, ttl 64, id 412, offset 0, flags [DF],
proto TCP (6), length 40) 192.168.1.20.22022 > 192.168.1.10.53639: R,
cksum 0xacfc (correct), 400703493:400703493(0) win 0

Vocês tem alguma sugestão? Perguntei na lista internacional se a falta
de "tcp options" poderia ser um problema, mas, a resposta foi que
"definitivamente esse não seria o problema"... :(

Aproveitando, os fontes estão no perforce.freebsd.org
cliente: bilouro_tcptest (//depot/projects/soc2008/bilouro_tcptest/)
o script do teste acima:
//depot/projects/soc2008/bilouro_tcptest/src/scripts/tcpconnect.py
(esse script é um teste sujo de como fazer o 3way handshake)

-- 
Victor Hugo Bilouro
FreeBSD!


Mais detalhes sobre a lista de discussão freebsd