Smart Assist ネットワーク技術者育成テキスト
EN

第5章 通信の基礎理解(新卒基礎)


5.1 IPアドレスとは

IPアドレスの役割

IPアドレス(Internet Protocol Address)は、ネットワーク上の機器を識別するための番号である。郵便の住所に相当し、データの送信先・送信元を特定するために使われる。

IPv4アドレスの形式

192 . 168 . 1 . 100 8bit 8bit 8bit 8bit → 合計 32bit
  • 0〜255の数値をドットで区切った4つの数値で表現する
  • 合計で約43億個のアドレスが存在する

プライベートIPアドレスとグローバルIPアドレス

種別範囲(代表例)用途
プライベートIP10.0.0.0 〜 10.255.255.255組織内ネットワーク(大規模)
プライベートIP172.16.0.0 〜 172.31.255.255組織内ネットワーク(中規模)
プライベートIP192.168.0.0 〜 192.168.255.255組織内ネットワーク(小規模)
グローバルIP上記以外インターネット上で一意に識別される

病院ネットワークでのIPアドレス

病院内の機器にはプライベートIPアドレスが割り当てられる。Smart Assist PCも院内ではプライベートIPを持つ。インターネットへ通信する際は、NATによってグローバルIPに変換される(5.8で解説)。

院内 192.168.10.50 (Smart Assist PC) NAT変換 外部 203.0.113.1 (病院のグローバルIP) AWS 52.xx.xx.xx (Smart Assistサーバ)

5.2 サブネットとは

サブネットの概念

サブネット(Subnet)は、大きなネットワークを論理的に分割した小さなネットワーク領域である。病院ネットワークでは、用途ごとにサブネットを分けてセキュリティを確保している。

サブネットマスク

サブネットマスクは、IPアドレスのどの部分が「ネットワーク部」でどの部分が「ホスト部」かを示す。

IPアドレス: 192 . 168 . 10 . 50 サブネットマスク: 255 . 255 . 255 . 0 (/24) ネットワーク部 同じネットワークに属する機器はここが共通 ホスト部 個々の機器を識別

CIDR表記

サブネットマスクCIDRホスト数用途例
255.255.255.0/24254台一般的なセグメント
255.255.255.128/25126台中規模セグメント
255.255.255.240/2814台小規模セグメント(サーバ用)
255.255.0.0/1665,534台大規模ネットワーク

病院での典型的なサブネット構成例

192.168.10.0/24 医療機器セグメント(AUTION EYE、Smart Assist PCなど) 192.168.20.0/24 LISサーバセグメント 192.168.30.0/24 電子カルテセグメント 192.168.40.0/24 業務LAN 192.168.50.0/24 DMZ

異なるサブネット間の通信はルーター(またはL3スイッチ)を経由する必要がある。


5.3 ルーターとスイッチ

Cisco ロゴ

Cisco(代表的なネットワーク機器メーカー)

スイッチ(L2スイッチ)

スイッチは、同じサブネット内の機器同士を接続するための装置である。

特徴説明
動作レイヤーレイヤー2(データリンク層)
識別に使う情報MACアドレス
役割同一セグメント内のフレーム転送
医療機器セグメント内のAUTION EYEと他の分析装置の接続
Cisco Catalyst スイッチ(設置例)

Cisco Catalyst スイッチの設置例(ラックマウント型L2スイッチ)

ルーター(L3スイッチ)

ルーターは、異なるサブネット間の通信を中継する装置である。

特徴説明
動作レイヤーレイヤー3(ネットワーク層)
識別に使う情報IPアドレス
役割異なるサブネット間のパケット転送、経路制御
医療機器セグメント → LISサーバセグメント間の通信
Cisco 2800 ルーター

Cisco 2800 シリーズ ルーター(業務用ルーターの例)

Smart Assistの通信経路上のルーター

Smart Assist PC (192.168.10.50) L2スイッチ ← 同一セグメント内 ルーター / L3スイッチ ← セグメント間通信 LISサーバ (192.168.20.10) … 院内通信 ファイアウォール インターネット … 外部通信

5.4 DNSの仕組み

DNSとは

DNS(Domain Name System)は、人間が読めるドメイン名(例: smartassist.example.com)をIPアドレス(例: 52.194.10.20)に変換する仕組みである。

DNSの名前解決の流れ

Smart Assist PC DNSサーバ インターネット 問い合わせ 「smartassist.example.com のIPアドレスは?」 上位DNSに問い合わせ 回答: 52.194.10.20 回答 「52.194.10.20です」 52.194.10.20 へ接続

病院環境でのDNS

多くの病院では以下のようなDNS構成をとっている。

構成パターン説明
院内DNSサーバ院内ホスト名を解決する。外部名はフォワーダ経由
フォワーダ構成院内DNSが外部の問い合わせをプロバイダDNSに転送
プロキシDNSプロキシサーバがDNSも解決する場合がある

Smart Assistで重要なポイント

Smart Assistの宛先がFQDN(ドメイン名)で指定されている場合、DNSの名前解決が正常に動作しなければ通信できない。DNS障害はSmart Assistの障害として最も多い原因のひとつである。

DNSトラブルの8割は"聞き先"の問題

Smart Assistの通信障害で一番多い原因がDNSだと書きましたが、そのDNSトラブルの8割は「どのDNSサーバに聞いているか」の問題です。

確認すべきは2つだけ:

  • ipconfig /all でSmart Assist PCに設定されたDNSサーバのIPを確認
  • そのDNSサーバが外部FQDN(インターネット上のドメイン名)を解決できるか確認

院内DNSが外部名を解決できない場合、フォワーダ設定が入っていないか、フォワーダ先へのUDP 53通信がFWでブロックされている可能性が高い。まずは nslookup smartassist.example.com 8.8.8.8 で外部DNSに直接聞いてみて、解決できるなら院内DNS側の問題だと切り分けられます。


5.5 ポート番号の意味

ポート番号とは

ポート番号は、同一の機器上で動作する複数のサービスを識別するための番号である。IPアドレスが「建物の住所」だとすれば、ポート番号は「部屋番号」に相当する。

主要なポート番号

ポート番号プロトコル用途
80HTTP暗号化なしのWeb通信
443HTTPS暗号化ありのWeb通信(Smart Assistで使用)
53DNS名前解決
22SSHセキュアなリモート接続
3389RDPリモートデスクトップ

Smart Assistで使用するポート

Smart Assistの通信は HTTPS (443/tcp) を使用する。ファイアウォールでは、Smart Assist PCから外部への443/tcp通信を許可する必要がある。

DNS用の53/udpを忘れるのは"あるある"

FW許可申請で「HTTPS 443/tcp を許可してください」と申請して、DNS の 53/udp を忘れる。これ、本当に"あるある"です。第12章のケーススタディ(12.1)でもまさにこの事例を取り上げています。

FQDN許可を使う場合、FW自身がDNS解決を行うので問題にならないこともありますが、直接DNSの場合は Smart Assist PC → DNSサーバ → 外部DNS への 53/udp が通らないと名前解決できません。

FW許可申請のチェックリストに「DNS 53/udp」を入れておく。これだけで、導入時のDNSトラブルの半分は防げます。

許可ルール例:
  送信元:   192.168.10.50  (Smart Assist PC)
  宛先:     smartassist.example.com
  宛先ポート: 443/tcp
  アクション: 許可

5.6 TCPとHTTPS

TCPとは

TCP(Transmission Control Protocol)は、データを確実に相手に届けるための通信プロトコルである。

TCPの特徴

特徴説明
コネクション型通信開始前に接続を確立する(3ウェイハンドシェイク)
信頼性データの到着確認、再送制御がある
順序保証データが送信順に届く

3ウェイハンドシェイク

クライアント サーバ SYN ① 接続要求 SYN + ACK ② 接続許可 ACK ③ 確認応答 TCP接続確立完了

HTTPSとは

HTTPS(HTTP over TLS)は、HTTPの通信をTLSで暗号化したプロトコルである。

HTTPS HTTP (リクエスト / レスポンス) TLS (暗号化・認証・完全性) TCP (信頼性のある通信)

Smart Assistの通信はHTTPSを使用しており、データの暗号化・サーバの認証・データの完全性がすべて保証されている。


5.7 TLS暗号化の仕組み

TLSとは

TLS(Transport Layer Security)は、通信を暗号化し、盗聴・改ざん・なりすましを防止するプロトコルである。

TLSが提供する3つの保護

保護内容Smart Assistでの意味
暗号化通信内容を第三者が読めない検査画像データが経路上で盗聴されない
認証接続先が本物であることを確認偽のサーバに接続させられない
完全性データが途中で改ざんされていないことを保証分類結果が途中で書き換えられない

TLSハンドシェイクの概要

クライアント サーバ ClientHello ① 対応する暗号方式を提示 ServerHello ② 使用する暗号方式を選択 Certificate ③ サーバ証明書を送付 (証明書の検証) 鍵交換情報 ④ 暗号鍵の素材を交換 Finished ⑤ ハンドシェイク完了 暗号化通信開始

サーバ証明書とは

サーバ証明書は、接続先サーバが本物であることを証明する電子的な身分証明書である。

証明書の要素内容
発行先(CN/SAN)サーバのドメイン名(例: smartassist.example.com)
発行者認証局(CA)の名前
有効期間証明書の有効開始日と終了日
公開鍵暗号化に使用する鍵

証明書の有効期限が切れている場合や、認証局が信頼されていない場合、TLSハンドシェイクは失敗し通信できなくなる。


5.8 NATの役割

NATとは

NAT(Network Address Translation)は、プライベートIPアドレスとグローバルIPアドレスを変換する仕組みである。

なぜNATが必要なのか

院内のSmart Assist PCはプライベートIPアドレスを持っているが、インターネット上ではプライベートIPは使えない。NATによってグローバルIPに変換することで、インターネットとの通信が可能になる。

院内 Smart Assist PC 192.168.10.50:50000 NAT装置 (FW / ルーター) 変換: 192.168.10.50:50000 → 203.0.113.1:60000 インターネット AWS 52.194.10.20:443

NATの動作

ステップ内容
1. 送信Smart Assist PC (192.168.10.50) がAWSへパケットを送信
2. NAT変換(行き)NAT装置が送信元IPをグローバルIP (203.0.113.1) に変換
3. サーバ応答AWSが203.0.113.1宛にレスポンスを返す
4. NAT変換(戻り)NAT装置がグローバルIPをプライベートIP (192.168.10.50) に戻す
5. 受信Smart Assist PCがレスポンスを受信する

ファイアウォールとNATの関係

多くの病院では、ファイアウォール装置がNAT機能も兼ねている。つまり、ファイアウォールのルール設定とNATの設定は同じ装置で行うことが多い。


次章では、ここで学んだ基礎知識を使い、Smart Assistの実際の通信シーケンスを技術的に解剖する。