Can you go to
http://icanhazip.com and tell us the output? Additionally, can you detail your LAN setup? What model is your router? Are you behind a switch / hub, or an additional router? What OS are you building on?
The relevant code:
externalAddress getter: line 253 of TNTools.cs
function GetExternalAddress: line 321 of TNTools.cs (also, check to make sure you aren't setting ipCheckerUrl. Let it use the defaults.)
Might also be a problem with the webclient and parsing:
function ResolveExternalIP: line 344
function ResolveAddress: line 391 (parses what the above function received)
I have a feeling most - if not all - of your issues are caused by something in your LAN setup. Set up some breakpoints on those lines and check if the variables are matching up. Note the first one that doesn't seem right.
edit: oh, I have the same issue

it's because your external IP is ipv6, I assume. The parsing doesn't account for ipv6 addresses (though TNet should support ipv6). I'll write up a fix after dinner and edit this again. In the meantime, you could try forcing an ipv4 address. On windows: Open Network & Sharing Center -> Change adapter settings -> right click your physical NIC and select Properties -> uncheck the Internet Protocol Version 6 box and click OK -> right click your physical NIC again and select Disable, then Enable.
edit2: In TNTools.cs, in the static bool ResolveExternalIP (string url) function,
replace the following:string[] split1 = text.Split(':');
if (split1.Length >= 2)
{
string[] split2 = split1[1].Trim().Split('<');
mExternalAddress = ResolveAddress(split2[0]);
}
else mExternalAddress = ResolveAddress(text);
With:mExternalAddress = ResolveAddress(text);
I'm not sure what adverse effects this could have with the parsing. I can't think of any IP related string with "<" in it. I checked the webpages and it's just plaintext, too. So no html tags. Hopefully Aren will see this and include it in the next TNet update.