• Welcome to Hurricane Electric's IPv6 Tunnel Broker Forums.

News:

Welcome to Hurricane Electric's Tunnelbroker.net forums!

Main Menu

Win7 not querying DNS for AAAA, only A

Started by udha, January 31, 2010, 06:12:59 PM

Previous topic - Next topic

udha

As the subject explains, a tunnel I've started to use on Windows 7 is not querying DNS for AAAA, only A records.

I have not had this problem on this same computer under ubuntu, but now under Windows I cannot get a tunnel to be of much use, as all DNS queries are trying is A records. I have not come across this particular problem before but I'm new to Windows 7, maybe there's an option for IPv6 DNS defaults or something, I haven't found it though.

cholzhauer

Hmm...that's strange.  Is the tunnel set up on this machine or are you running through a router elsewhere?  Both my Vista and Win7 machines return AAAA records before A records.

What is your preference set to?  By default it's supposed to be AAAA over A, but I've seen other people on here mention that it is a customizable setting.

jimb

Is the resolver on your win7 box pointing to the same place your linux box is?

bombcar


cholzhauer

Unfortunately Windows is behind on this...you're limited to "nslookup"

udha

#5
Thanks for the replies, I'll try and answer it all here, with some helpful network information too:

ipconfig /all output:
C:\>ipconfig /all

Windows IP Configuration

  Host Name . . . . . . . . . . . . : UNIT-03
  Primary Dns Suffix  . . . . . . . :
  Node Type . . . . . . . . . . . . : Hybrid
  IP Routing Enabled. . . . . . . . : No
  WINS Proxy Enabled. . . . . . . . : No

Ethernet adapter Local Area Connection 2:

  Connection-specific DNS Suffix  . :
  Description . . . . . . . . . . . : SURECOM EP-320X-R 100/10M PCI Adapter
  Physical Address. . . . . . . . . : 00-02-44-XX-XX-XX
  DHCP Enabled. . . . . . . . . . . : Yes
  Autoconfiguration Enabled . . . . : Yes
  Link-local IPv6 Address . . . . . : fe80::b997:dfe8:XXXX:XX0a%13(Preferred)
  IPv4 Address. . . . . . . . . . . : 10.192.0.104(Preferred)
  Subnet Mask . . . . . . . . . . . : 255.192.0.0
  Lease Obtained. . . . . . . . . . : Tuesday, 2 February 2010 10:44:10 AM
  Lease Expires . . . . . . . . . . : Wednesday, 3 February 2010 10:44:10 AM
  Default Gateway . . . . . . . . . : 10.192.0.1
  DHCP Server . . . . . . . . . . . : 10.192.0.1
  DHCPv6 IAID . . . . . . . . . . . : 301990468
  DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-12-E3-FF-BD-12-EB-86-XX-XX-00

  DNS Servers . . . . . . . . . . . : 2001:470:20::2
                                      10.192.0.1
  NetBIOS over Tcpip. . . . . . . . : Enabled

Tunnel adapter isatap.{BCDC0503-69A3-4100-958F-3D55ED27A08C}:

  Media State . . . . . . . . . . . : Media disconnected
  Connection-specific DNS Suffix  . :
  Description . . . . . . . . . . . : Microsoft ISATAP Adapter
  Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
  DHCP Enabled. . . . . . . . . . . : No
  Autoconfiguration Enabled . . . . : Yes

Tunnel adapter Local Area Connection* 11:

  Connection-specific DNS Suffix  . :
  Description . . . . . . . . . . . : Teredo Tunneling Pseudo-Interface
  Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
  DHCP Enabled. . . . . . . . . . . : No
  Autoconfiguration Enabled . . . . : Yes
  IPv6 Address. . . . . . . . . . . : 2001:0:cf2e:3096:2881:2154:8db2:d67(Preferred)
  Link-local IPv6 Address . . . . . : fe80::2881:2154:8db2:d67%15(Preferred)
  Default Gateway . . . . . . . . . : ::
  NetBIOS over Tcpip. . . . . . . . : Disabled

Tunnel adapter IP6Tunnel:

  Media State . . . . . . . . . . . : Media disconnected
  Connection-specific DNS Suffix  . :
  Description . . . . . . . . . . . : Microsoft Direct Point-to-point Adapater
  Physical Address. . . . . . . . . : 00-00-00-00-00-00-00-E0
  DHCP Enabled. . . . . . . . . . . : No
  Autoconfiguration Enabled . . . . : Yes


Cronjob running every 5 minutes from a dedicated off-site server:
#!/bin/bash
# Checks for IPv4 endpoint and updates tunnel if changed

# Setting up variables

#???IPV4ADDR = The new IPv4 Endpoint (AUTO to use the requesting client's IP address)
OLDIPV4ADDR=`cat /scripts/tunnel.ip`
NEWIPV4ADDR=`dig +short homenetwork.dynalias.net`

#MD5PASS = The MD5 Hash of your password
MD5PASS=e73b86dd334797eddc03ff48f3476acc

#USERID = The UserID from the main page of the tunnelbroker (not your username)
USERID=9be3af7f5f1066dd08b6e807b9e7c9fb

#GTUNID = The Global Tunnel ID from the tunnel_details page
GTUNID=22555

if [ $OLDIPV4ADDR == $NEWIPV4ADDR ];
then
       echo $OLDIPV4ADDR remains unchanged, no action taken.
else
       echo Updating OLD IP: $OLDIPV4ADDR to NEWIP: $NEWIPV4ADDR
       wget -q --no-check-certificate https://ipv4.tunnelbroker.net/ipv4_end.php\?ipv4b=$NEWIPV4ADDR\&pass=$MD5PASS\&user_id=$USERID\&tunnel_id=$GTUNID -O out.htm
       echo $NEWIPV4ADDR > /scripts/tunnel.ip
fi


nslookup works fine too:
C:\>nslookup ipv6.google.com 10.192.0.1
Server:  UnKnown
Address:  10.192.0.1

Non-authoritative answer:
Name:    ipv6.l.google.com
Address:  2001:4860:c004::68
Aliases:  ipv6.google.com


Using Wireshark shows NO AAAA requests when trying to visit ipv6.google.com in Firefox, IE8, and Chrome. Using NSLOOKUP is querying AAAA, other apps aren't getting that same treatment. I hope someone can see something revealing in the info above :)

broquea

Your Windows machine only seems to have Teredo connectivity, that is the first thing that leaps out at me. Are you actually configuring a tunnel with us on this machine, or have dhcpv6/RA configured somewhere on the same LAN? I ask because I don't see any evidence of that on the Windows machine output.

cholzhauer

Agreed with broquea...try a

netsh int teredo set state disabled

jimb

Quote from: cholzhauer on February 01, 2010, 07:57:20 AM
Unfortunately Windows is behind on this...you're limited to "nslookup"
Nah.  You can get named and all the tools (including dig) right from ISC.  I use dig all the time on windows. 

I've run a caching NS on a Windows laptop a few times when I'm annoyed at some DNS server on a wifi hotspot or whatever.


udha

Quote from: cholzhauer on February 01, 2010, 06:13:34 PM
Agreed with broquea...try a

netsh int teredo set state disabled


I set that, and am not sure now what to do next, I have tried the commands I used originally to set up the tunnel, with errors this time:

C:\>netsh interface ipv6 add v6v4tunnel IP6Tunnel 114.77.242.152 72.52.104.74
You were not connected because a duplicate name exists on the network.
If joining a domain, go to System in Control Panel to change the computer name and try
again. If joining a workgroup, choose another workgroup name.

C:\>netsh interface ipv6 add address IP6Tunnel 2001:470:1f04:71f::2
The object already exists.

C:\>netsh interface ipv6 add route ::/0 IP6Tunnel 2001:470:1f04:71f::1
The object already exists.


broquea

replace 114.77.242.152 with 10.192.0.104, you need to use your internal IP from your router/NAT appliance.

QuoteI set that, and am not sure now what to do next, I have tried the commands I used originally to set up the tunnel, with errors this time:

C:\>netsh interface ipv6 add v6v4tunnel IP6Tunnel 114.77.242.152 72.52.104.74
You were not connected because a duplicate name exists on the network.
If joining a domain, go to System in Control Panel to change the computer name and try
again. If joining a workgroup, choose another workgroup name.

C:\>netsh interface ipv6 add address IP6Tunnel 2001:470:1f04:71f::2
The object already exists.

C:\>netsh interface ipv6 add route ::/0 IP6Tunnel 2001:470:1f04:71f::1
The object already exists.



udha

#11
Quote from: broquea on February 01, 2010, 08:17:43 PM
replace 114.77.242.152 with 10.192.0.104, you need to use your internal IP from your router/NAT appliance.

Ah right, thanks, how do I undo the tunnel stuff so I can re-add it properly?

C:\>netsh interface ipv6 add v6v4tunnel IP6Tunnel 10.192.0.104 72.52.104.74
You were not connected because a duplicate name exists on the network. If joinin
g a domain, go to System in Control Panel to change the computer name and try ag
ain. If joining a workgroup, choose another workgroup name.

EDIT: I've just run "netsh int ipv6 reset" and am restarting, I'd say this has been the cause of my problems, that'll teach me not to read a massive *NOTE section :p

cholzhauer

im  on my phone so it's hard to tell, but have you tried resetting the ipv6 interfaces?

udha

Quote from: cholzhauer on February 02, 2010, 05:32:18 AM
im  on my phone so it's hard to tell, but have you tried resetting the ipv6 interfaces?

Thanks, I've done: netsh int ipv6 reset
but still can't add the tunnels back, is there a better way to reset/remove the tunnel?

jimb

#14
netsh int ipv6 delete interface IP6Tunnel

If that doesn't work, get the index name from "netsh int ipv6 show interface" and use the above command with the index.

You may also have to use "persistent" at the end.  

EDIT:  Works For Me(TM):

netsh int ipv6 add v6v4tunnel Test 10.10.10.10 20.20.20.20
Ok.

netsh int ipv6 show interface
Querying active state...

Idx  Met   MTU    State         Name
---  ----  -----  ------------  -----
 8     1   1280  Disconnected  Test
 7     2   1280  Connected     Teredo Tunneling Pseudo-Interface
 6     0   1500  Disconnected  Local Area Connection
 5     0   1500  Disconnected  Local Area Connection 2
 4     0   1280  Connected     Wireless Network Connection
 3     1   1280  Connected     6to4 Pseudo-Interface
 2     1   1280  Connected     Automatic Tunneling Pseudo-Interface
 1     0   1500  Connected     Loopback Pseudo-Interface

netsh int ipv6 delete interface Test
Ok.

netsh int ipv6 show interface
Querying active state...

Idx  Met   MTU    State         Name
---  ----  -----  ------------  -----
 7     2   1280  Connected     Teredo Tunneling Pseudo-Interface
 6     0   1500  Disconnected  Local Area Connection
 5     0   1500  Disconnected  Local Area Connection 2
 4     0   1280  Connected     Wireless Network Connection
 3     1   1280  Connected     6to4 Pseudo-Interface
 2     1   1280  Connected     Automatic Tunneling Pseudo-Interface
 1     0   1500  Connected     Loopback Pseudo-Interface


You may also have to hose the default route with: netsh int ipv6 delete route ::/0 <interface or index>