IPアドレス
IPアドレスは「172.16.0.0.」のような「.」で区切られた4つの数字の並びで表されます。
ネットワークにつながっている機器にはすべてIPアドレスが割り振られていて、IPアドレスとIPアドレスで通信しています。
IPアドレスにはグローバルIPアドレスとローカルIPアドレスがあります。
グローバルIPアドレスは世界中で重複がないよう管理されており、世界中の通信で利用されています。
ローカルIPアドレスは会社や家庭などで自由に使えます。
このようなローカルIPアドレスで構成されたネットワークからインターネットをする場合は、ローカルIPアドレスを持つネットワーク内の機器のどれかがグローバルIPアドレスも保持し、その危機が通信を中継することでインターネットと通信できるようになります。
NATによるIPアドレス変換
グローバルIPアドレスは数が不足してきており、不足の対応としてプライベートIPアドレスを活用するNAT(Network Address Translation)が利用されています。
プライベートIPアドレスとグローバルIPアドレスを変換することで、個々の機器がグローバルIPアドレスを持たないままグローバルIP越しの通信をするための技術がNATです。
厳密には多くの場合、NATというよりは、IPアドレスと接続ポートを変換するNAPT(Network Address Port Translation)が使われることがほとんどです。
NATルータが接続元IPと接続元ポート、および接続先IPと接続先ポートを覚えておくことでIPアドレスを変換する仕組みです。
ご家庭のルータでもよく使われていますし、大規模サービスでもよく使われています。
ルータを通るタイミングで行き(PC⇒サーバ)のIPアドレス(SRC)、戻り(サーバ⇒PC)のIPアドレス(DST)に、IPアドレスが変換されます。
インターネット(というかIPネットワーク)は、階層化(レイヤリング)されています。
その層(レイヤー)があるおかげで、物理的にどのように接続していても問題なくデータのやりとりができる互換性を持っています。
ファイアウォール
ネットワーク内でのセキュリティにはファイアウォールを使います。
ファイアウォールは、中(組織内ネットワーク)から外(インターネット)、外から中への通信内容を制御し、意図しない通信が発生しないよう接続要求を遮断することで、ネットワークのセキュリティを向上させます。
ファイアウォールでは、接続元IPアドレス・接続先IPアドレス・ポートと、接続量・通信量を制限します。
通信内容まで踏み込むものもあり、このあたりも一括で対応できるものをUTM(Unified Threat Management)と呼びます。
またHTTPやHTTPSの通信の中身まで踏み込んで検査するものを、WAF(Web Application Firewall)と呼びます。
アプリケーションの想定しないSQL文を実行させて攻撃する「SQLインジェクション」の防止策ではこの方法が使われます。
SSL
通信の暗号化にはSSL(Secure Sockets Layer)を使います。
通信を暗号化することで、エンドユーザがブラウザで入力した個人情報やパスワードなどを、安全にサーバに届けることができるようになります。
SSLはレイヤーなので、HTTPだけでなく他のプロトコルと組み合わせて通信を暗号化することができます。
メール送信で使用するプロトコルであるSMTPやPOPとも組み合わせて使えます。