[SOLVED] Teredo

  • Hi,

    is it possible to use Teredo behind pfSense? Any specific configurations required? Teredo works flawlessly if I switch to a regular Linksys router (WRT120N and WRT160N in my case) and dies when back to my 1.2.3-RELEASE.

    Pinging ipv6.l.google.com [2a00:1450:8005::93] with 32 bytes of data:

    Destination host unreachable.
    Destination host unreachable.
    Destination host unreachable.
    Destination host unreachable.

    Ping statistics for 2a00:1450:8005::93:
       Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),

  • if I remember correctly it relies on isatap. <domain>being available for the tunnel setup. If the search domain is different from with the linksys that would likely make the tunnel setup fail.</domain>

  • LAYER 8 Global Moderator

    I know it works, that was first thing I played with when started with ipv6.  It had it working behind both a 1.2.3 and 2.0 pfsense box.  then I went to tunnel from he on w7 box behind pfsense.  And then with the great ipv6 work that has been done on 2.0 of pfsense Im now running a very stable tunnel with endpoint on the pfsense box.  Works GREAT, and any machine I want on my local network has full ipv6 access with end to end ipv6 dns as well, etc.  And the best thing a ipv6 firewall at the border vs having to worry about each machine on the local network being open to ipv6 and only its software firewall.

    I would really really suggest you just graduate to a tunnel on your pfsense box.  I have been very very impressed with the ipv6 work being done on pfsense, way ahead of schedule since its not suppose to be really supported until 2.1

  • @johnpoz:

    I know it works, that was first thing I played with when started with ipv6.


    I don't have native ipv6, nor I'm interested in getting a tunnel broker. Teredo is all I need for now. Could you recall any specific configuration tweaks that you did to make Teredo work?

    I think the problem relates to this error when "netsh int ipv6 show teredo" and the fact that Teredo doesn't work behind a symmetric NAT:

    Error                  : client behind symmetric NAT

    Is there a way around this?


  • LAYER 8 Global Moderator

    Who said anything about native ipv6?

    I will try and get back to this later today, I had to fire up a vm and teredo interface was disabled, etc.  but I enabled the interface and I don't show any errors.  But then again its not active either.

    netsh interface ipv6>show teredo
    Teredo Parameters
    Type                    : client
    Server Name            : teredo.ipv6.microsoft.com.
    Client Refresh Interval : 30 seconds
    Client Port            : unspecified
    State                  : dormant

    I don't recall having to do anything special on my pfsense box for teredo, only thing is ipv6 is enabled on it in advanced setup.  When I get a chance I will try to get this vm connected via teredo.

    But again its not a very good solution at all, I would really suggest you just get a tunnel -- shoot for teredo to actually work you have to do some weird routing config on the w7 box if I recall --- I believe this is the link I used way back when when playing with teredo.


  • Looked at the link and did a lot of digging but no luck.

    Tried setting a custom port and adding NAT and firewall rules but still getting the symmetric NAT error.

  • LAYER 8 Global Moderator

    As already mentioned do you have isatap enabled, what is the domain on it?  Please post a dump of your ipv6 settings.

    Ok so I enabled my isatap interface on that vm, and then tried to access a ipv6 address to turn on the teredo intereface - and shazam work, see even pings ipv6, etc.

    And I have done nothing on my pfsense box.. Other than yeah ipv6 is allowed.. And as I recall that is exactly how it worked before I even went to ipv6 code.

    Your client is what OS?  Does XP support symmetric nat for teredo?

    Symmetric NATs

    A NAT that maps the same internal address and port number to different external addresses and ports, depending on the external destination address (for outbound traffic).

    Teredo works well over cone and restricted NATs. Teredo in Windows XP SP2, Windows XP SP1 and the Advanced Networking Pack for Windows XP, and Windows Server 2003 Service Pack 1 cannot work over symmetric NATs. Teredo in Windows Vista and Windows Server "Longhorn" can work between Teredo clients if only one Teredo client is behind one or more symmetric NATs. For example, Teredo in Windows Vista and Windows Server "Longhorn" will work if one of the peers is behind a symmetric NAT and the other is behind a cone or restricted NAT

  • I don't understand the concept of isatap. Is it supposed to be a MS driver that installs a virtual isatap adapter that does ipv6 tunneling or something?

    I should probably research isatap further, but still, I have the same setup on my machine when testing with the Linksys and the thing works.

    I'm using a Win XP machine and I read everywhere that the XP Teredo client doesn't work behind symmetric NAT. "netsh int ipv6 show teredo" shows symmetric NAT with the pfS and restricted with the wrt120n, so it should be the problem. Yours is a win7 client that is supposed to be able to deal with the sym NAT.

    So I guess I won't be able to make it work unless there is a way to deal with the symmetric NAT issue.

    Still, I appreciate and thank you for your help.

  • LAYER 8 Global Moderator

    isatap (Intra-Site Automatic Tunnel Addressing Protocol)

    But per the info I posted to from MS, xp teredo will not work with sym nat.  Now you can prob work around that – hmmm ok this might work??

    So to change your NAT from sym on pfsense turn on manual advanced and then edit the rules it creates for you for your local network to be static port.. See attached image

    Now I fired up my vm again with teredo and nat shows as restricted and portperserving yes -- maybe this will work for your xp box that does not like sym nat?

    And looks like you can even set the client port with
    netsh int teredo>set state clientport=XXXX

    Then you could create specific map I do believe.  Not sure if that works with XP, I can fire up a XP vm and play with it some..  But don't currently have the time.. And to be honest teredo blows ;)  Still say you should just setup a true tunnel ;)

  • I can't thank you enough for the outbound NAT static port tip that solved the symmetric NAT issue.

    ping ipv6.google.com

    Pinging ipv6.l.google.com [2a00:1450:8005::93] with 32 bytes of data:

    Reply from 2a00:1450:8005::93: time=161ms
    Reply from 2a00:1450:8005::93: time=48ms
    Reply from 2a00:1450:8005::93: time=48ms
    Reply from 2a00:1450:8005::93: time=48ms

    Ping statistics for 2a00:1450:8005::93:
        Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
    Approximate round trip times in milli-seconds:
        Minimum = 48ms, Maximum = 161ms, Average = 76ms

  • LAYER 8 Global Moderator

    Not a problem - glad its working for you.  I learned a bit more about teredo myself, since have not played with it quite some time.  What I learned is Im glad Im running a tunnel ;) hehehe

    Have fun!

Log in to reply