ネットワークについて
PC間での通信はネットワークインターフェースを通して行われる。
LAN(Local Area Network)
とはPCをスイッチに接続し、他PCと接続するネットワークのこと。
スイッチングハブ
/非スイッチングハブ(リピータ)
-> 同一LAN
内では直接通信が行える。
ルータ
-> 別LAN
or インターネット
ではルータを経由して通信を行う
スイッチングハブとリピータの違いは、いわゆるブリッジ
という機能を有しているかどうかで決まる。
ブリッジは同一Lan内の機器のMacアドレスを管理し、特定のポートに振り分ける機能を有するかどうかで決まる。
エフェメラルポート調べ方
- Linux
# このファイルに書いてある
less /proc/sys/net/ipv4/i
- Windows
netsh int ipv4 show dynamicport tcp
// windowsでエフェメラルポートが枯渇している場合、以下のコマンドで確認できる
netstat -an | find "TIME_WAIT"
タスクマネージャ
でハンドル数が多いものは枯渇の可能性が疑われるらしい
名前解決を行う
- Linuxコマンドは以下
dig "host名"
sshについて
パスワード認証/公開鍵認証を行うことができる。 公開鍵の作り方について書いてみる。 手順は以下である。
- 秘密鍵/公開鍵を作成する
(クライアントで作成)
- 作成した
公開鍵
を接続先のサーバ
に格納する - 接続する
# 1.秘密鍵/公開鍵(.pub)を作成する
# デフォルト .sshディレクトリに id_rsa(秘密鍵)/id_rsa.pub(公開鍵)が作成される
ssh-keygen
# 2. 接続先に公開鍵を設置する(手段は2つ)
# 2.1 ssh-copy-idコマンドを使う(クライアントで実行できる)
ssh-copy-id "接続先リモートホスト"
# 2.2 先ほど作った公開鍵(id_rsa.pub)の記述をそのままコピペする
.ssh/authorized_keys
# 3. sshで接続する。(秘密鍵を指定して接続する)
ssh -i ~/.ssh/id_rsa user@hostname
ssh -i "<キー>.pem" user@host
IPマルチキャスト(ブロードキャストとは別!)とは
IPネットワーク上で、特定の複数の相手に同じデータをいっぺんに送信すること、1対多の放送データ配信を効率的に行う。
ブロードキャスト
とは異なり、無差別にデータを送信せずに、特定の受信者にのみパケットを送信する。
マルチキャストには特殊なIPアドレス(以下)が予約されており、 これをマルチキャスト用アドレスとしてデータ送受信を行う。
- IPv4アドレス(クラスD):
224.0.0.0~239.255.255.255
- IPv6アドレス:
ff00::/8
で始まる領域
デメリットとして、インターネットにおいて任意のネットワークを跨いだIPマルチキャストが利用できないため、 プライベートなネットワークや通信事業者、プロバイダ内のネットワークのみ利用できる。
オーバーレイ・マルチキャストについて
IPマルチキャストと同様の効果を通常のユニキャストで実現する技術
受信側アプリケーションが、受け取ったパケットをコピーして送信することで、他受信側アプリケーションで受信する機能である。標準規格
は決まっておらず、アプリケーションでマルチキャストする各種技術の総称のこと。
用途としては、動画配信などに使われる。
IPマルチキャスト
との最たる違いは、「同時送信するパケットをコピーして送るのは誰か?」である。
- IPマルチキャストで中継を行う :
ルーター
- オーバーレイ・マルチキャスト :
クライアント(マルチキャスト・クライアント)
メリットとして配信側でのパケット送信が、1回で済むので配信サーバのトラフィック,性能が低めで済む また、ルータ,プロバイダを跨いだ配信網も構築しやすい
IPマルチキャスト網は通信事業者が設備を構築するため、コストがかかるが、 ユーザ数を見誤ると、性能の過不足を引き起こす(ルータが中継できる性能に依存するため) オーバーレイマルチキャストはユーザ数の増加に伴い、マルチキャスト・クライアントも増加するため中継能力の強化もされる。