OsiriX(MacOS)で104番ポートのDICOM通信ができなくてハマった問題
104番ポートは、DICOM通信として公式に確保されたポート番号ですが、Macの場合、デフォルトでは104番ポートで通信が行えない現象があります。
TCPやUDPにおけるポート番号の一覧(Wikipedia)
Appleの公式サイトを見ると、一見すると104番ポートは既存ソフトの通信では使われていません。では、使われていないポートが、なぜ使えないという現象が起きるのでしょうか?
Macは管理者権限より更にうえの権限をもったユーザーがいる
インターネットを調べ回っていたらこのようなものを見つけました。
しれっとこのような事が書いてありました。「104番ポートは、MacOSのルートアクセスが必要です。このポートでは受信できません」気がつくわけ無いだろ!と思うかも知れませんが、これがMacOSの仕様ですので、ハマった方は素直にルートアクセスをゲットしましょう。WindowsのPACSを使っていたら、CTやMRIなどに、デフォルトの送信先として104番ポートを指定されている場合があります。ここからMacベースのOsiriXなどに移行したら、当然送信先として104番を指定しますので、ここで結構ハマります。
Macでルートユーザーになる
Mac でルートユーザを有効にする方法やルートパスワードを変更する方法(Apple公式)
Apple公式サイトの指示に従い、ルートユーザーを有効にします。
Apple メニュー () >「システム環境設定」の順に選択し、「ユーザとグループ」(または「アカウント」) をクリックします。
をクリックして、管理者の名前とパスワードを入力します。
「ログインオプション」をクリックします。
「接続」(または「編集」) をクリックします。
「ディレクトリユーティリティを開く」をクリックします。
「ディレクトリユーティリティ」ウインドウの をクリックして、管理者の名前とパスワードを入力します。
ディレクトリユーティリティのメニューバーから、以下のように選択します。
「編集」>「ルートユーザを有効にする」の順に選択し、ルートユーザ用に使うパスワードを入力します。
または、「編集」>「ルートユーザを無効にする」の順に選択します。
ルートユーザとしてログインします
Apple メニュー >「ログアウト」の順に選択し、現在のユーザアカウントからログアウトします。
ログインウインドウで、ユーザ名「root」と、ルートユーザ用に作成したパスワードを使ってログインします。
ログインウインドウに複数のユーザのリストが表示される場合は、「その他のユーザ」をクリックしてからログインします。
ルートユーザーにてOsiriXを起動すれば、104番ポートでモダリティからDICOMデータを受信することができるようになります。