[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:34728] Re: telnetdの応答が遅い



碓井です。

    >> strace試してみたところ、まったく同じ症状です。
    >> でも、この時間のかかる問い合わせの前にもFQDN名で問い合わせをしていて、
    >> そっちが成功してるのに、どうしてまた問い合わせをするのでしょうか?

これに関しては、in.telnetd のソースを読んでみるしかわからないです。

# 時間がないので読んでませんが、私では読んでもわからないかもです。

    >> 光地さんのところでは、ホスト名が DNS で名前解決できるようになっていま
    >> すでしょうか? 

    >> nslookup ホスト名 も nslookup FQDN も成功します。
    >> ところで、potato環境で同様のことをしたところ、potatoではDNSに問い合わせ
    >> をしてませんでした。
    >> ライブラリかなにかの問題なのでしょうか・・・?

DNS に問い合わせているのは in.telnetd なので、可能性として

  * potato と woody で telnetd パッケージのバージョンが異なるため、
    in.telnetd の挙動が異なる。
  * in.telnetd が呼び出しているであろう gethostbyname() 等の
    ライブラリ関数の挙動が異なる。

という場合があるかと思います。

また、

  「なぜ、nslookup でホスト名が名前解決できるにもかかわらず、
    in.telnetd がホスト名を DNS に問い合わせた結果が即座に返らないのか?
    (なぜ poll() がタイムアウトするのか?)」

という疑問もあります。
これに関しては、bind のデバッグログ等を出力してみると
bind が何をしているのかわかるかも知れません。
(/var/cache/bind/named.run に出力されます。)

デバッグログの出力をする場合
  # rndc trace
  # rndc querylog
  # rndc status
  number of zones: 6
  debug level: 1            <- trace コマンドの回数だけ level が上がります。
  xfers running: 0
  xfers deferred: 0
  soa queries in progress: 0
  query logging is ON
  server is up and running

デバッグログの出力を停止する場合
  # rndc notrace
  # rndc querylog
  # rndc status
  number of zones: 6
  debug level: 0
  xfers running: 0
  xfers deferred: 0
  soa queries in progress: 0
  query logging is OFF
  server is up and running

----------------------------------------------------------------
碓井 成		E-mail: usui_mi@xxxxxxxxx