Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Apr 2002 23:17:38 +0400
From:      Anton Shcherbinin <useperl@fastmail.fm>
To:        Greg 'groggy' Lehey <grog@FreeBSD.org>
Cc:        freebsd-questions@freebsd.org
Subject:   IPv6: how can I get rid of it?
Message-ID:  <1411696390.20020428231738@fastmail.fm>
In-Reply-To: <20020428104538.B83112@wantadilla.lemis.com>
References:  <743669500.20020427213601@fastmail.fm> <LPBBIGIAAKKEOEJOLEGOOEPMCOAA.barbish@a1poweruser.com> <20020428104538.B83112@wantadilla.lemis.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Sunday, April 28, 2002, 5:15:39, Greg 'groggy' Lehey wrote:

> On Saturday, 27 April 2002 at 16:32:28 -0400, Joe & Fhe Barbish wrote:
>> On  Saturday, April 27, 2002 1:36 PM, Anton Shcherbinin wrote:
>>>
>>> I  installed  FreeBSD  4.5 Release. When my host is trying to connect to
>>> any  other  host  specified  by  name, I experience a huge (1.5 minutes)
>>> delay before the hosts are connected. For example, suppose I want to get
>>> http://yahoo.com/ page. I write:
>>>
>>> $ telnet yahoo.com 80
>>>
>>> At  the  same time (actually, a bit earlier), I wrote at another console
>>> as root:
>>>
>>> # tcpdump -n
>>>
>>> And here is tcpdump's output (a bit edited for clarity):
>>>
>>> 18:37:51.501962 my_host.1055 > our_DNS_server.53:  4486+ AAAA? yahoo.com. (27)
>>> 18:37:56.512212 my_host.1056 > our_DNS_server.53:  4486+ AAAA? yahoo.com. (27)
>>> 18:38:06.522353 my_host.1057 > our_DNS_server.53:  4486+ AAAA? yahoo.com. (27)
>>> 18:38:26.532655 my_host.1058 > our_DNS_server.53:  4486+ AAAA? yahoo.com. (27)
>>> 18:39:06.543281 my_host.1059 > our_DNS_server.53:  4487+ A? yahoo.com. (27)
>>> 18:39:06.683069 our_DNS_server.53 > my_host.1059:  4487* 2/5/5 A 66.218.71.113, (238)
>>> 18:39:06.683609 my_host.1028 > yahoo.com.80: S 2162865409:2162865409(0) win 65535 <mss 1460,nop,wscale 1,nop,nop,timestamp 579069 0> (DF) [tos 0x10]
>>> 18:39:06.909922 yahoo.com.80 > my_host.1028: S 2552035614:2552035614(0) ack 2162865410 win 65535 <mss 1460,nop,wscale 1,nop,nop,timestamp 66944899579069>
>>> 18:39:06.909984 my_host.1028 > yahoo.com.80: . ack 1 win 33304 <nop,nop,timestamp 579091 66944899> (DF) [tos 0x10]
>>>
>>> That  is, my host tries to resolve yahoo.com at our DNS server, *but* it
>>> looks  for 'AAAA' RR, and not 'A'. It gets no reply, and in 5 seconds it
>>> retries  the  query (again, 'AAAA' RR). No reply again, it retries in 10
>>> seconds,  then  again  in  20  seconds.  No  reply  within  40  seconds.
>>> *FINALLY*,  my  host  asks  DNS server for 'A' RR for yahoo.com . And no
>>> wonder that in several milliseconds DNS server tells my host yahoo.com's
>>> IP  address.  Then,  within  several milliseconds, my host and yahoo.com
>>> become TCP-connected.
>>>
>>> As  you  can see, I had to waste 5+10+20+40==75 seconds watching my host
>>> try to find nonexistent AAAA resource record. And things are the same if
>>> I try to send mail or to connect to ftp site or whatever else.
>>>
>>> What have I done wrong? What should I do? Thanks a lot for any ideas.
>>>
>>> I general, what are AAAA records? RFC1034/1035 say nothing about
>>> such RR. What TFM should I read about them?

> They're address records for IPV6.

Thank you, Greg. It makes things much clearer.

> So what's the problem?  I really don't know.  Does this only happen
> with telnet?  Only with yahoo.com?

As   I  have already said, the same happens with any application and any
host.  E. g., with ftp and ftp.freebsd.org : 
1) my host queries our DNS server for AAAA record of ftp.freebsd.org
2) query times out in 5 secs
3) the same query
4) query times out in 10 secs
5) the same query
6) query times out in 20 secs
7) the same query
8) query times out in 40 secs
9)  the   same query, *but* for A record; DNS server replies in some ms,
and  then    everything   goes   great,   my   host   quickly   connects
to ftp.freebsd.org:21 etc.

How  can  I  fix  that?

The   only  thing I could think of is to disable IPv6 at all. But wait a
second:

$ grep -i ipv6_enable /etc/rc* /etc/defaults/*
/etc/rc:case ${ipv6_enable} in
/etc/defaults/rc.conf:ipv6_enable="NO"          # Set to YES to set up for IPv6.

                      ^^^^^^^^^^^^^^^^
Does not it mean that IPv6 is already disabled?

On the other hand:
$ ifconfig -u
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        inet 10.10.10.9 netmask 0xffffff00 broadcast 10.10.10.255
        inet6 fe80::2c0:26ff:fea5:b640%rl0 prefixlen 64 scopeid 0x1
        ether 00:c0:26:a5:b6:40
        media: Ethernet autoselect (100baseTX <full-duplex>)
        status: active
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
        inet6 ::1 prefixlen 128
        inet6 fe80::1%lo0 prefixlen 64 scopeid 0x3
        inet 127.0.0.1 netmask 0xff000000

Both   interfaces  have IPv6 (inet6) addresses.

I  deal  with  IPv6  the 1st time in my life. I just understand nothing.
:-(
What  should  I  do? I am ready to give you any additional info about my
FBSD configuration. Many thanks in advance.

-- 
Anton


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1411696390.20020428231738>