(Mac OSX)USBシリアル変換ケーブルを使ってCISCOルータに接続する

3kk ネットワーク及び演習 演習補足資料

Mac OSXでのコンソール接続

以下の手順に従いCISCOルータに接続する。接続後のコマンドは切断、中断以外は、WindowsのTeraTermでの操作と同じです。

  1. USB-シリアル変換ケーブルをMacに接続(ドライバは不要)
  2. シリアルケーブル(水色)を用意し、ルータのconsoleポート(RJ-45)にモジュラ側を接続
  3. シリアルケーブル(水色)のもう一方(9ピンメス)をUSB-シリアル変換ケーブルに接続
  4. Macのterminalから、screenコマンドでルータに接続

USB-シリアル変換ケーブルを使ってscreenコマンドでの接続方法

1. USB-シリアル変換ケーブルのデバイス名を取得する

Mac OSXでは、USB-シリアル変換ケーブルを接続後、USB-シリアル変換ケーブルは/dev/tty.usbserial-XXXXXXX (XXXXXXXは各々違う文字列が入ります)というデバイスとして認識されます。

terminalを起動し、ls /dev/tty.usb*のコマンドでデバイスを一覧表示させます。

$ ls /dev/tty.usb*
/dev/tty.usbserial-XXXXXXX

この時、/dev/tty.usbserial-で始まるデバイスが一覧に出てくることを確認してください。 ここで出てきた/dev/tty.usbserial-XXXXXXXが、screenコマンドで指定するデバイス名です。

2. screenコマンドでデバイス名を指定して接続

デバイス名を取得できたら、以下のコマンドでCISCOルータのコンソールへの接続待受を起動します。

$ screen /dev/tty.usbserial-XXXXXXX 9600

※ルータの電源投入は、別途配布の手順資料に従い投入してください。

screenコマンドリファレンス

screenコマンドのマニュアル(英語)の全文は、man screenコマンドで見ることができます。

よく使用するコマンドとショートカットキーは以下の通りです。

機能 コマンド(ショートカットキー)
接続 screen /dev/cu.usbserial-XXXXXXX 9600
切断 [control] + [a], [control] + [\ (¥)]
中断 [control] + [a], [control] + [d]
セッションリストの表示
再接続に必要なPIDを取得できます。
screen -ls
再接続 screen -r [PID]

screenコマンドトラブルシューティング

1. screenコマンドを[control] + [c]で強制終了してしまった

または、なんらかの理由でscreenコマンドが意図せず終了してしまった場合、screenのセッションがそのまま残った状態で終了してしまっている可能性が高いです。

Sorry, could not find a PTY.

のようなメッセージが出てきてしまっているとき、皆さんのようにscreenコマンドに不慣れな方の場合は、セッションのリストを表示しましょう。

$ screen -ls
There is a screen on:
    81386.ttys000.computername  (Attached)
1 Socket in /var/folders/wz/v22827zx4f16hc078d6vmtnr0000gn/T/.screen.

上記例では、表示された81386がPIDです。この部分のPIDを控え、下記コマンドでscreenに再接続してください。

$ screen -r 81386

こういったセッションが残ってしまうのは、screenコマンドの適切な使い方ではありません。 screenコマンドから終了する場合の手順として、[control] + [a]を押したあと、 [control] + [\ (¥)]を押し、終了して良いか聞かれたらyを押すようにしましょう。

2. 上記を試してもscreenに再接続ができない

その場合は、screen -lsで取得したPIDを強制終了することで解決できるかもしれません。

$ screen -ls
There is a screen on:
    81386.ttys000.computername  (Attached)
1 Socket in /var/folders/wz/v22827zx4f16hc078d6vmtnr0000gn/T/.screen.

上記例では、表示された81386がPIDです。この部分のPIDを控え、下記コマンドでプロセスを削除してください。

$ kill -9 81386

これでscreenコマンドのプロセス自体が終了しますので、再度最初からscreen /dev/tty.usbserial-XXXXXXX 9600にて接続を行いましょう。