[plt-scheme] web-server and IPv6?

From: Jay McCarthy (jay.mccarthy at gmail.com)
Date: Mon Nov 7 16:45:55 EST 2005

As you may know, the IPv6 code was added 4 days ago.

The web-server is parameterized internally over a listening IP address
that defaults to #f. (Customized by the -a arg.)

The documentation claims that if tcp-listen is given #f as a listening
IP address then:

http://download.plt-scheme.org/doc/299.400/html/mzscheme/mzscheme-Z-H-11.html#node_sec_11.4.1:

"If hostname-string-or-false is #f (the default), then the listener
accepts connections to all of the listening machine's IP addresses.
Otherwise, the listener accepts connections only at the interface
associated with the given hostname. For example, providing "127.0.0.1"
as hostname-string-or-false creates a listener that accepts only
connections to "127.0.0.1" (the loopback interface) from the local
machine."

And Matthew's email on IPv6 says:

"* By default, `tcp-listen' and `udp-open-socket' create sockets that
  work with IPv4, only. For `tcp-connect', etc., the hostname
  determines the protocol family."

This implies that the web-server creates sockets that work with IPv4,
unless given a new IP.

So, if you'd like to change the default behavior of the web-server,
you'll have to ask Matthew to change the default behavior of mzscheme.

Jay

On 11/7/05, Doug Orleans <dougo at place.org> wrote:
> I can't seem to get the web-server to run using the SVN trunk code:
>
> dro:/home/web# web-server-text
> tcp-listen: listen on 80 failed (Address family not supported by protocol; errno=97)
>
> It works if I supply the -a argument (using my local IP address,
> namely 192.168.1.21), but now the log file says that every request
> comes from 192.168.1.21, e.g.
>
>   (from "192.168.1.21" to "192.168.1.21" for "/" at "Monday, November 7th, 2005 4:26:36pm")
>
> And anyway, I'd rather not have to specify the IP address, in case I
> decide to rearrange my local net.  Is there a way to get this to work?
> (I'm running Debian Linux 2.4.21-1-k7; I haven't done anything special
> to enable IPv6, but I wouldn't be surprised if it's on by default.)
>
> --dougo at place.org
>
> _________________________________________________
>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>


--
Jay McCarthy <jay at cs.brown.edu>
http://jay.makeoutcity.com/


Posted on the users mailing list.