Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD General Discussion
FritzCoyote
Beginner


Joined: 21 Dec 2008
Posts: 11

PostPosted: Thu Apr 14, 2011 8:57 pm   

ipv6 support
 
Can I use an ipv6 address in CMUD?
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Thu Apr 14, 2011 10:08 pm   
 
I honestly don't have any idea. In theory you shouldn't need to care about IP addresses. You enter the Host name and the Windows network library handles the network connection. If you enter an IP address into the host field, that also just gets passed to the Windows network routine. So as long as the Windows API handles it, then in theory it should work. But the ipv6 stuff really happens at a much lower level then the CMUD application where you shouldn't need to worry about it.

Maybe you can tell us more about what you are trying to do.
Reply with quote
FritzCoyote
Beginner


Joined: 21 Dec 2008
Posts: 11

PostPosted: Fri Apr 15, 2011 9:56 am   
 
The problem is my ISP's DNS service does not handle the ipv6 address discworld6.obsidian.org.uk

So when I attempt to connect in cmud I get the 'Lookup Error' popup box.

When I attempt to enter the ipv6 address itself into the the lookup error box (2a01:348:19e:2::2) and click 'try IP address' the Lookup error box comes right back, but has changed what I entered to 255.255.255.255.

Note that if I paste the ip address into my browser I can connect to the mud's web server (same server different port, of course) so I know the network is working.

It just down to convincing CMUD that the funny looking numbers are really an IP address.

Thanks,
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Fri Apr 15, 2011 3:45 pm   
 
OK, thanks for letting me know. Not sure if I'll be able to fix that any time soon, but I'll add it to the list to look at. Sounds like I'll need to update the Indy networking components for Delphi that CMUD is using to call the Windows API.

One trick you might try is to find out if you can enter the host and ipv6 address into your Windows Hosts file so that Windows handles the DNS for that host instead of your ISP. You might need to do some Google searching and it might depend upon your version of Windows. But since Windows 7 is supposed to support ipv6, there might be a way to have it handle the DNS conversion.

Also seems like there should be some software out there to convert a IPv6 connection into a local IPv4 connection somehow. This whole issue is going to get bigger and bigger as more people start using ipv6, so it's not just a CMUD issue but a more general issue of how to use IPv6 with older software that might not support it.
Reply with quote
FritzCoyote
Beginner


Joined: 21 Dec 2008
Posts: 11

PostPosted: Tue Apr 19, 2011 3:31 am   
 
I have tried the host file entry, and it works for both ping and http (firefox)

But not for cmud

I get the same Lookup error box.

:(
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Tue Apr 19, 2011 4:18 pm   
 
I'll add this to the bug list to see if I can get CMUD working with your above example. But this won't be in the next update, sorry. My guess is that I'm going to need to upgrade/replace the Indy library that I'm using in Delphi and hope to find a version that still works with the non-Unicode Delphi 2007 compiler and which supports IPv6 telnet sockets.
Reply with quote
FritzCoyote
Beginner


Joined: 21 Dec 2008
Posts: 11

PostPosted: Fri Apr 22, 2011 10:00 pm   
 
Thanks for looking into this.

I suspect that the first pro-level windows mud client to support ipv6 may enjoy a competitive advantage.

While I love open source for lots of things, the open source mud clients that can handle ipv6 are not on the same level of CMUD in terms of features.

In other words, I'm spoiled. I want my maps and mxp and capture windows and all other good stuff, plus ipv6.

Smile
Reply with quote
Kline
Novice


Joined: 17 May 2001
Posts: 40
Location: Illinois

PostPosted: Wed May 11, 2011 1:22 pm   
 
Well, good to see a topic on this. I guess count me as a "me too" on IPv6 support. I have a global v6 address on my PC via a 6to4 tunnel on my gateway router. I did manage to finagle cMUD into connecting to a MUD across v6 by putting the v6 IP as the hostname in the MUD profile. It gave an error on first connect, so I pasted the same v6 IP into the IP box and used "Try IP" then it connected. Now, however, I have lost link to the game due to a network hiccup and can not for the life of me get it to reconnect lol.

Even entering the v4 only hostname back into the MUD profile and restarting cMUD it refuses to ping or do a lookup on it. Also directly entering the v4 IP now fails, too. Only on this game have I broken my profile, haha...
_________________
Infinity is only a mindset.

Down for PVP? Try The Vortex
Reply with quote
Zugg
MASTER


Joined: 25 Sep 2000
Posts: 23379
Location: Colorado, USA

PostPosted: Fri May 13, 2011 3:56 am   
 
I did some basic investigating of this. Looks like there are actually a lot of changes at the low-level socket layer. It's not just a different address lookup. The WinSock2 has new data structures for a lot of things.

Indy 10 seems to support IPv6, but CMUD only uses Indy for the HTTP connections (like downloading help updates, etc). The actual MUD connection goes through a custom low-level socket library that I wrote a long time ago. Looks like it's finally time to convert that to use the Indy socket routines. That makes this a bigger job than I initially thought, so it's going to be a while before I can get to it. But I will try hard to get it added as an update to v3.x and not wait for the 4.x beta versions.

But any work on this needs to wait a couple of weeks until I finish moving.
Reply with quote
Kline
Novice


Joined: 17 May 2001
Posts: 40
Location: Illinois

PostPosted: Thu May 19, 2011 7:29 pm   
 
Well I seem to have seriously broken the one profile I did attempt to use v6 on as it won't take a host or IP address and recognize it. It only manages to connect to the game after I let it fail and it prompts me to re-try the host or use IP; except the IP box is blank. So, I enter the IP manually and after two more failures it usually finds the server lol. Worked around by just exporting my package, nuking the profile and re-creating it.
_________________
Infinity is only a mindset.

Down for PVP? Try The Vortex
Reply with quote
Kline
Novice


Joined: 17 May 2001
Posts: 40
Location: Illinois

PostPosted: Fri May 27, 2011 12:55 am   
 
Just to add a workaround for anybody determined to connect to a game on a v6 address with cMUD... You can use socat on a Linux server that has a dualstack to redirect connections from the IPv4 side out to the IPV6 side.

I currently have this built across my LAN to access a game across v6 (better routing, less lag) that does not natively support v4, but does have a 4 to 6 socat running on their game server. So I've effectively created a tunnel that looks like this:

My PC <- IPv4 -> My Debian LAN Server <- IPv6 -> MUD Server <- IPv4 -> MUD Server (Game Port)

socat for my Debian machine: socat tcp4-listen:7000,fork tcp6-connect:ipv6.mud-server.com:7006
socat for the MUD server: socat tcp6-listen:7006,fork tcp4-connect:ipv4.mud-server.com:7000

Riding the v6 'net while still getting to use the cMUD I love on the game I love :) Obviously this is not a practical solution for everyone, but hey it worked for me and I wanted to share :)
_________________
Infinity is only a mindset.

Down for PVP? Try The Vortex
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD General Discussion All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net