以前、お客様先にてL2網内のルーターの設定変更を依頼されたことがありました。
ルーターは既に設定済みで、コンフィグレーションにも何も問題ないように見えました。
ところが、192.168.1.1 ⇒ 192.168.1.2にTelnetしても、「リモートホスト側から拒否されました。」というメッセージが出て接続ができませんでした。
原因を調査するために、通信試験の実施とコンフィグを再確認したところ、以下の事が分かりました。
- リモート元の192.168.1.1とリモート先の192.168.1.2にpingを実施すると疎通確認できた。
⇒ ネットワーク層での通信は問題なし。 - リモート元の192.168.1.1とリモート先の192.168.1.2に仮想回線のパスワードは設定されている。
⇒Telnet接続を使用するには、仮想回線のパスワードを設定しないと、拒否されるようになっているが、その可能性はない。 - ACLは、192.168.1.0/24のパケットは許可する設定がある。
⇒ACLにて、拒否しているのではないことが分かった。 - 192.168.1.0/24はVLAN1に所属している。
Telnet接続については、教科書通りであれば、上記1~3の条件が問題なければ、接続ができるはずですが、現場では、教科書通りに行かないのが常です。
4番目の「VLAN1に所属しているから入れないのでは?」と推測しましたので、ヘルプ機能を使用してTelnetのオプションコマンドを探ってみました。
すると、source-interfaceという設定がありました。
CiscoA# telnet 192.168.1.2 /source-interface
さらに、vlanという設定がありましたので、vlan 1を指定しました。
CiscoA# telnet 192.168.1.2 /source-interface vlan 1
このコマンドでTelnet接続ができ、無事に設定ができました。
どうやら、送信元にvlan1を指定してTelnet接続しなければ、リモート元で拒否されるということがわかりました。
今までTelnetについて、こんなに深堀したことがなかったので、良い経験になりました。
このような事象の解決は、どんな教科書やWeb上でも言及してませんので、こんな経験は現場ならではだなと感じました。とにかく試行錯誤が大切ですね。
telnetは、平文通信ですので、sshが使用されるのが一般的です。
以下の記事は、Ciscoルータでの説明になりますが、Catalystスイッチにも使用できます。