7章ネットワーク

この章では、Linuxのネットワークについて詳しく説明します。モダンな環境では、Linuxが提供するネットワークスタックは不可欠なコンポーネントです。これがないと、ほとんど何もできません。クラウドプロバイダのインスタンスにアクセスするにも、ウェブをブラウズするにも、新しいアプリをインストールするにも、ネットワーク接続における通信が必要です。

ここではまず、一般的なネットワーク用語について、ハードウェアレベルからHTTPやSSHといったユーザ向けのコンポーネントまで、幅広く解説します。また、ネットワークスタック、プロトコル、インタフェースについても説明します。特に、ウェブやインターネットの名前解決をするDNS(Domain Name System)については、時間をかけて説明します。DNSは広域なシステムに限らず、Kubernetesのようなコンテナ環境でのサービス検出で使用される中心的なコンポーネントです。

次に、アプリケーション層のネットワークプロトコルとツールについて見ていきます。これには、ファイル共有、ウェブ、NFSなど、ネットワーク上でデータを共有する方法が含まれます。

最後に、ジオマッピングからネットワーク上の時間管理まで、高度なネットワークトピックを確認します。

本来はLinuxネットワークだけで一冊の書籍となるレベルです。本書ではエンドユーザの観点から実用的なものに関連するトピックを扱います。ネットワーク機器の設定やセットアップなど、ネットワークの管理的なものは対象外とします。

7.1 基本

まず、なぜネットワークがさまざまなユースケースに関係するのかについて説明し、一般的なネットワーク用語を定義してみましょう。

現代の環境では、ネットワークが中心的な役割を担っています。アプリのインストール、ウェブ、メールやソーシャルメディアの閲覧といった作業から、リモートマシン(ローカルネットワークで接続している組み込みシステムから、クラウドプロバイダのデータセンターで稼働しているサーバまで)との接続まで、広い範囲で活用されています。ネットワークには多くの可動部や層があるため、問題がハードウェアに起因するのか、ソフトウェアスタックに起因するのかを判断するのは難しい場合があります。 ...

Get 入門 モダンLinux ―オンプレミスからクラウドまで、幅広い知識を会得する now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.