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

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



碓井です。

    >>  光地と申します。
    >> woodyをクリーンインストールしましたが、
    >> telnet localhostしたときに、Loginプロンプトが出るまでに
    >> 10秒以上かかってしまいます。
    >> ftp localhostなどではこの問題はありません。
    >> また、nslookup localhostの結果はすぐに返ってきます。

当方のマシン(sarge)に bind9, telnetd パッケージを入れて実験したところ、
同様の現象になりました。
inetd プロセスに対して strace を実行して調べてみたところ、
in.telnetd が localhost ではなく、何故かホスト名(silvia)に対する 
IP アドレスを DNS に問い合わせに行って時間がかかっているように見えます。
(理由はわかりません)
DNS でホスト名が名前解決できれば、問題は解決できそうに思えます。
(実験はしてません)

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

=== strace の実行例 ===

  # strace -o /tmp/inet.log -f -T -p 422
                                     ^^^ inetd のプロセス ID

=== /tmp/inet.log からの抜粋 ===

下記のように、5 秒 * 2 回時間がかかっている。(poll がタイムアウトしている)

2084  connect(5, {sin_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("12
7.0.0.1")}}, 28) = 0 <0.000021>
  → 127.0.0.1 の 53 番ポート (DNS) へ接続

2084  send(5, "\330\276\1\0\0\1\0\0\0\0\0\0\6silvia\0\0\34\0\1", 24, 0) = 24 <0.
000503>
  → silvia(ホスト名) を DNS へ送っている == IP アドレスの問い合わせ

2084  gettimeofday({1033232816, 415532}, NULL) = 0 <0.000011>
2084  poll([{fd=5, events=POLLIN}], 1, 5000) = 0 <5.008638>
  → poll() システムコールがタイムアウト(5 秒)   ^^^^^^^^^^

2084  send(5, "\330\276\1\0\0\1\0\0\0\0\0\0\6silvia\0\0\34\0\1", 24, 0) = 24 <0.
000494>
2084  gettimeofday({1033232821, 425137}, NULL) = 0 <0.000011>
2084  poll([{fd=5, events=POLLIN}], 1, 5000) = 0 <5.005312>
  → poll() システムコールがタイムアウト(5 秒)   ^^^^^^^^^^

2084  close(5)                          = 0 <0.000026>


=== 当方の実験環境 ===
  ・OS は sarge
  ・bind9 および、telnetd パッケージをインストール
  ・telnet localhost とすると以下の状態で 10 秒程度待たされ、
    その後 login プロンプトがでる。

      silvia% telnet localhost
      Trying 127.0.0.1...
      Connected to silvia.
      Escape character is '^]'.

  ・ホスト名は silvia
    hostname コマンドの出力は以下のとおり。

      silvia% hostname
      silvia

  ・/etc/resolv.conf は以下の 1 行だけ。

      nameserver 127.0.0.1

  ・/etc/nsswitch.conf の hosts 行は以下のとおり。

      hosts: files dns

  ・/etc/hosts の 127.0.0.1 の行は以下のとおり。
    (ホスト名は silvia)

      127.0.0.1       localhost
      XX.XX.XX.XX     silvia

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