Re: lpd: Host name for your address (fe80:....%xl0) unknown
At 1:52 AM +0900 10/3/01, Hajimu UMEMOTO wrote: > > On Tue, 2 Oct 2001 12:30:33 -0400 > > Garance A Drosihn <[EMAIL PROTECTED]> said: >drosih> The print queue for 'lp' on oink refers to a remote machine that >drosih> is named neutron. That hostname maps to an IPv6 address. Thus, >drosih> lpq/lpr/lprm have no choice on how to connect to that remote host. >drosih> They use the IPv6 address. (note, for instance, that your 'ping6' >drosih> knows about neutron via IPv6, not IPv4). So, the print client >drosih> connects to the print server via IPv6. When the print client >drosih> connects to the print server, the print server looks up the IPv6 >drosih> address of the *client*, because the client made an IPv6 connection >drosih> to the server. Again, this has nothing to do with 'lpd -4' on the >drosih> client. The print server apparently can not find a hostname to >drosih> match the IPv6 address of the client, so it returns the first error >drosih> message, listing the IPv6 address of the client. > >No, a client does query RR for IPv6 and A RR for IPv4. If >RR is found, a client tries to connect using IPv6, 1st. However, lpd >accepts only IPv4 connection, in this case. Then, if A RR is found, a >client falls down and tries to connect using IPv4. So, a client never >connects using IPv6 to an IPv4 only listening server. Let me see if I have everything figured out now. If I understand what Alex has said, 1) on the print client, lpd is started with 'lpd -4' 2) he has not said how lpd is started on the print server. 3) because the print server came back with the error of "Host name for your address (fe80::250:baff:fed4:a512%xl0) unknown" I assume the print server, in this case, was NOT running with 'lpd -4'. Thus, the IPv6 connection DID work, but the print server could not come up with the hostname for the IPv6 address. 4) when he changed the print client to explicitly use the IPv4 address, the print server came back with an error message of "Host name for your address (192.168.0.19) unknown" This implies that when an IPv4 connection is made to the print server, the print server does it's reverse-lookup using the IPv4 address of the client. Since this works as expected, that again implies that the error message in part #3 does mean that the print server did get an IPv6 connection from the client. All this makes sense to me (I think...), although it looked wrong to Alex because he was seeing that IPv6 address in the message from the print server. Of course, I first need to find out how lpd was started on the print *server* (neutron), as opposed to the print client. #1, above, is irrelevant to how lpq on the client will connect to a remote machine. If 'lpd' is not started with -4 on his print server, then I think this all makes sense, and everything worked as I would expect it to. The only change to lpr which might be worth making is to add an 'rm4=' option to possible printcap settings for a queue, which would be like 'rm=' except that it would not even attempt to make an IPv6 connection. I'm not sure that's really necessary, but there might be situations where it would be useful. It might be that a particular hostname does have an IPv6 address, for instance, but for some reason it would be better to make an IPv4 connection to it. If people think this would be useful, I could add it, or something like it. Other than that one change, I think the code in lpr is working right, and no changes need to be made for the situation that Alex describes. -- Garance Alistair Drosehn= [EMAIL PROTECTED] Senior Systems Programmer or [EMAIL PROTECTED] Rensselaer Polytechnic Instituteor [EMAIL PROTECTED] To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lpd: Host name for your address (fe80:....%xl0) unknown
> On Tue, 2 Oct 2001 12:30:33 -0400 > Garance A Drosihn <[EMAIL PROTECTED]> said: drosih> On the print *client* machine, you start lpd with '-4', meaning that drosih> it (the client) should only accept jobs from IPv4-style connections. drosih> Note that this flag only effects what lpd will accept, this flag has drosih> no effect on what lpr/lpq/lprm will do when they need to connect to drosih> a remote queue. Yes, it's right. drosih> The print queue for 'lp' on oink refers to a remote machine that drosih> is named neutron. That hostname maps to an IPv6 address. Thus, drosih> lpq/lpr/lprm have no choice on how to connect to that remote host. drosih> They use the IPv6 address. (note, for instance, that your 'ping6' drosih> knows about neutron via IPv6, not IPv4). So, the print client drosih> connects to the print server via IPv6. When the print client drosih> connects to the print server, the print server looks up the IPv6 drosih> address of the *client*, because the client made an IPv6 connection drosih> to the server. Again, this has nothing to do with 'lpd -4' on the drosih> client. The print server apparently can not find a hostname to drosih> match the IPv6 address of the client, so it returns the first error drosih> message, listing the IPv6 address of the client. No, a client does query RR for IPv6 and A RR for IPv4. If RR is found, a client tries to connect using IPv6, 1st. However, lpd accepts only IPv4 connection, in this case. Then, if A RR is found, a client falls down and tries to connect using IPv4. So, a client never connects using IPv6 to an IPv4 only listening server. drosih> Assuming that all of the above is correct, then I *think* everything drosih> is working the way it is supposed to. However, I do not know the drosih> finer points of how IPv6 is supposed to work. Can a single hostname drosih> have both an IPv4 address and an IPv6 address? (as far as DNS is drosih> concerned, I mean). This I do not know. In any case, the parameters drosih> to 'lpd' are not going to effect how 'lpq' handles the printcap file. It is usual way that a dual stack host has both RR and A RR. -- Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan [EMAIL PROTECTED] [EMAIL PROTECTED] ume@{,jp.}FreeBSD.org http://www.imasy.org/~ume/ To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lpd: Host name for your address (fe80:....%xl0) unknown
At 2:19 PM +0200 10/1/01, Alexander Langer wrote: > >> alex> 15329 ?? S 0:00.02 lpd -4 >> alex> alex@oink ~ $ lpq > > alex> lpd: Host name for your address >(fe80::250:baff:fed4:a512%xl0) unknown > >I started lpd on this machine: (with the -4 flag, see above). >alex@oink ~ $ uname -a ; ifconfig -a >FreeBSD oink.cichlids.com 5.0-CURRENT FreeBSD 5.0-CURRENT #0: Sat >Sep 1 15:25:41 CEST 2001 >[EMAIL PROTECTED]:/usr/obj/usr/src/sys/GENERIC i386 >rl0: flags=8843 mtu 1500 > inet 192.168.0.19 netmask 0xff00 broadcast 192.168.0.255 > inet6 fe80::250:baff:fed4:a512%rl0 prefixlen 64 scopeid 0x1 >This is the printcap from this machine: > >lp|local line printer:\ > :sh:\ > :rm=neutron:\ > :sd=/var/spool/output/lpd:lf=/var/log/lpd-errs: > >Note that "neutron" has: >alex@oink ~ $ ping6 neutron >PING6(56=40+8+8 bytes) fe80::250:baff:fed4:a512%rl0 >--> fe80:1::250:4ff:fe0f:5a27 > >Then I just start lpd (or lpd -4, same effect), and this happens. >when I do rm=192.168.0.1 in the printcap, I get: >root@oink ~ $ lpq >oink.cichlids.com: Warning: no daemon present >Rank Owner Job Files Total Size >1stalex 0(standard input)419326 bytes > >lpd: Host name for your address (192.168.0.19) unknown > >So, this MIGHT be the reason: The IPv4 address is nonexistent, >but it displays the IPv6 address as error address. However, it's >still bad that he uses and IPv6 stuff when I specify -4 > >BTW, it works if I add a PTR for 192.168.0.19. I am currently battling some kind of cold or flu, so my thinking may be a bit confused. Still, after reading all your messages a few times, I think I understand what is happening. You have a machine which is a "client", as far as printing is concerned. That machine is oink.cichlids.com. In the printcap file for that machine, you reference a printer on a different machine. That print-server machine is named neutron. On the print *client* machine, you start lpd with '-4', meaning that it (the client) should only accept jobs from IPv4-style connections. Note that this flag only effects what lpd will accept, this flag has no effect on what lpr/lpq/lprm will do when they need to connect to a remote queue. The print queue for 'lp' on oink refers to a remote machine that is named neutron. That hostname maps to an IPv6 address. Thus, lpq/lpr/lprm have no choice on how to connect to that remote host. They use the IPv6 address. (note, for instance, that your 'ping6' knows about neutron via IPv6, not IPv4). So, the print client connects to the print server via IPv6. When the print client connects to the print server, the print server looks up the IPv6 address of the *client*, because the client made an IPv6 connection to the server. Again, this has nothing to do with 'lpd -4' on the client. The print server apparently can not find a hostname to match the IPv6 address of the client, so it returns the first error message, listing the IPv6 address of the client. You change printcap to use an IPv4 address, and the client now connects to the server using IPv4. However, the print-server also can not find a hostname to match that IPv4 address, so it returns the second error message. Assuming that all of the above is correct, then I *think* everything is working the way it is supposed to. However, I do not know the finer points of how IPv6 is supposed to work. Can a single hostname have both an IPv4 address and an IPv6 address? (as far as DNS is concerned, I mean). This I do not know. In any case, the parameters to 'lpd' are not going to effect how 'lpq' handles the printcap file. It may be that lpr/lpq/lprm need some change here, but I'm not sure what it would be. -- Garance Alistair Drosehn= [EMAIL PROTECTED] Senior Systems Programmer or [EMAIL PROTECTED] Rensselaer Polytechnic Instituteor [EMAIL PROTECTED] To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lpd: Host name for your address (fe80:....%xl0) unknown
> On Mon, 1 Oct 2001 14:21:28 +0200 > Alexander Langer <[EMAIL PROTECTED]> said: alex> BTW, the lpd server (neutron) is a alex> FreeBSD neutron.cichlids.com 4.3-STABLE FreeBSD 4.3-STABLE #0: Tue Jun 5 01:38:27 CEST 2001 [EMAIL PROTECTED]:/storage/obj/storage/src/sys/NEUTRON i386 alex> I think the problem is on the server-side. (since the error messages alex> contains a "xl0" string, which is the server's NIC). Yes, lpd has this message, while lpq hasn't. I'm trying to reproduce it on my 4.4-RELEASE box. -- Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan [EMAIL PROTECTED] [EMAIL PROTECTED] ume@{,jp.}FreeBSD.org http://www.imasy.org/~ume/ To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lpd: Host name for your address (fe80:....%xl0) unknown
> On Mon, 1 Oct 2001 15:29:43 +0200 > Alexander Langer <[EMAIL PROTECTED]> said: alex> Thus spake Dag-Erling Smorgrav ([EMAIL PROTECTED]): > > alex@oink ~ $ lpq > > lpd: Host name for your address (fe80::250:baff:fed4:a512%xl0) unknown > The server is reporting that it can't figure out who you are, and > therefore won't let you access the printer. See hosts.lpd(5). The > client is merely repeating the error message it got from the server. alex> It's still using IPv6 though I told it to do IPv4. Still, I cannot understand why it occures, and I cannot reproduce it, here. -- Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan [EMAIL PROTECTED] [EMAIL PROTECTED] ume@{,jp.}FreeBSD.org http://www.imasy.org/~ume/ To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lpd: Host name for your address (fe80:....%xl0) unknown
Thus spake Dag-Erling Smorgrav ([EMAIL PROTECTED]): > > alex@oink ~ $ lpq > > lpd: Host name for your address (fe80::250:baff:fed4:a512%xl0) unknown > The server is reporting that it can't figure out who you are, and > therefore won't let you access the printer. See hosts.lpd(5). The > client is merely repeating the error message it got from the server. It's still using IPv6 though I told it to do IPv4. Alex To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lpd: Host name for your address (fe80:....%xl0) unknown
Alexander Langer <[EMAIL PROTECTED]> writes: > alex@oink ~ $ lpq > lpd: Host name for your address (fe80::250:baff:fed4:a512%xl0) unknown The server is reporting that it can't figure out who you are, and therefore won't let you access the printer. See hosts.lpd(5). The client is merely repeating the error message it got from the server. DES -- Dag-Erling Smorgrav - [EMAIL PROTECTED] To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lpd: Host name for your address (fe80:....%xl0) unknown
BTW, the lpd server (neutron) is a FreeBSD neutron.cichlids.com 4.3-STABLE FreeBSD 4.3-STABLE #0: Tue Jun 5 01:38:27 CEST 2001 [EMAIL PROTECTED]:/storage/obj/storage/src/sys/NEUTRON i386 I think the problem is on the server-side. (since the error messages contains a "xl0" string, which is the server's NIC). Alex To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lpd: Host name for your address (fe80:....%xl0) unknown
Thus spake Hajimu UMEMOTO ([EMAIL PROTECTED]): > alex> 15329 ?? S 0:00.02 lpd -4 > alex> alex@oink ~ $ lpq > alex> lpd: Host name for your address (fe80::250:baff:fed4:a512%xl0) unknown > Sorry, but I cannot see this message, here. > Could you please tell me how did you do? I started lpd on this machine: (with the -4 flag, see above). alex@oink ~ $ uname -a ; ifconfig -a FreeBSD oink.cichlids.com 5.0-CURRENT FreeBSD 5.0-CURRENT #0: Sat Sep 1 15:25:41 CEST 2001 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/GENERIC i386 rl0: flags=8843 mtu 1500 inet 192.168.0.19 netmask 0xff00 broadcast 192.168.0.255 inet6 fe80::250:baff:fed4:a512%rl0 prefixlen 64 scopeid 0x1 ether 00:50:ba:d4:a5:12 media: Ethernet autoselect (100baseTX) status: active lp0: flags=8810 mtu 1500 faith0: flags=8000 mtu 1500 lo0: flags=8049 mtu 16384 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4 inet 127.0.0.1 netmask 0xff00 ppp0: flags=8010 mtu 1500 This is the printcap from this machine: lp|local line printer:\ :sh:\ :rm=neutron:\ :sd=/var/spool/output/lpd:lf=/var/log/lpd-errs: Note that "neutron" has: alex@oink ~ $ ping6 neutron PING6(56=40+8+8 bytes) fe80::250:baff:fed4:a512%rl0 --> fe80:1::250:4ff:fe0f:5a27 16 bytes from fe80::250:4ff:fe0f:5a27%rl0, icmp_seq=0 hlim=64 time=2.492 ms ^X^C (telnet6 works!) Then I just start lpd (or lpd -4, same effect), and this happens. when I do rm=192.168.0.1 in the printcap, I get: root@oink ~ $ lpq oink.cichlids.com: Warning: no daemon present Rank Owner Job Files Total Size 1stalex 0(standard input) 419326 bytes lpd: Host name for your address (192.168.0.19) unknown So, this MIGHT be the reason: The IPv4 address is nonexistent, but it displays the IPv6 address as error address. However, it's still bad that he uses and IPv6 stuff when I specify -4 BTW, it works if I add a PTR for 192.168.0.19. Alex To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: lpd: Host name for your address (fe80:....%xl0) unknown
Hi, > On Sun, 30 Sep 2001 14:54:31 +0200 > Alexander Langer <[EMAIL PROTECTED]> said: alex> I don't think that I like this behaviour: alex> alex@oink ~ $ ps ax | grep lpd alex> 15328 ?? Ss 0:00.01 lpd -4 alex> 15329 ?? S 0:00.02 lpd -4 alex> alex@oink ~ $ lpq alex> lpd: Host name for your address (fe80::250:baff:fed4:a512%xl0) unknown Sorry, but I cannot see this message, here. Could you please tell me how did you do? alex> Odd. Is a link-local address supposed to have a host name anyways? No. The resolver doesn't do reverse lookup at all. So, I believe you cannot play with lpr by specifying link-local address. -- Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan [EMAIL PROTECTED] [EMAIL PROTECTED] ume@{,jp.}FreeBSD.org http://www.imasy.org/~ume/ To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
lpd: Host name for your address (fe80:....%xl0) unknown
Hi! I don't think that I like this behaviour: alex@oink ~ $ ps ax | grep lpd 15328 ?? Ss 0:00.01 lpd -4 15329 ?? S 0:00.02 lpd -4 alex@oink ~ $ lpq lpd: Host name for your address (fe80::250:baff:fed4:a512%xl0) unknown alex@oink ~ $ ifconfig -a rl0: flags=8843 mtu 1500 inet 192.168.0.19 netmask 0xff00 broadcast 192.168.0.255 inet6 fe80::250:baff:fed4:a512%rl0 prefixlen 64 scopeid 0x1 ether 00:50:ba:d4:a5:12 media: Ethernet autoselect (100baseTX) status: active lp0: flags=8810 mtu 1500 faith0: flags=8000 mtu 1500 lo0: flags=8049 mtu 16384 inet6 ::1 prefixlen 128 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x4 inet 127.0.0.1 netmask 0xff00 I don't know why lpd.c's chkhost() gets an INET6 socket, since it only listens on tcp4: alex@oink ~dir $ netstat -a | grep print tcp4 0 0 *.printer *.*LISTEN ccbdd3c0 stream 0 0 ccab3200000 /var/run/printer Odd. Is a link-local address supposed to have a host name anyways? Alex To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message