[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:26566] Re: ssh connection refused
In article <20010123140542.733AA5D00@xxxxxxxxxxxxxxxxxxxx> (at Tue, 23 Jan 2001 23:05:43 +0900), SAITO Naohiko <n_saito@xxxxxxxxxxxxx> says:
> で、接続デキないので /var/log/auth.log に
> sshd[27390]: fatal: get_sock_port: getnameinfo NI_NUMERICSERV failed
> などというメッセイジも追加されております。
kernel/module, ssh -v, sshd -d の結果(全体)が知りたいですが、
たぶん、これは linux-2.2 系 kernel をお使いで、ipv6 が有効/loadable に
なっている状態でおこる問題のような気がします。
で、原因は sockaddr_in6{} 構造体の大きさが変更になったことでしょう。
- linux 2.4 では sin6_scope_id が追加された
- glibc 2.2 から sin6_scope_id が追加された
しかし、glibc2.2 の getnameinfo() の正当性チェックで、古い長さのものも
はじくようになっているため、linux-2.2 が get{sock,peer}name() の返す
"古い" sockaddr_in6 が拒否されてしまうのです。
ということで、linux-2.4 系 kernel をお使いいただければ解決します。
なお、glibc へは linux22 でも動くような patch を送ったのですが、
間違っているものの互換性のためにコードを汚すようなことはしない、と
(その部分が)拒否されました。
なお、USAGI Project の提供する linux22, または glibc-2{1,2} を
お使いいただければ、問題は起こりません。:-)
http://www.linux-ipv6.org
--
Hideaki YOSHIFUJI @ USAGI Project <yoshfuji@xxxxxxxxxxxxxx>
PGP5i FP: F731 6599 5EB2 BBA7 1515 1323 1806 A96F 5700 6B25