ネットワーク構築演習 37710001

山本 雅也

Tags

2単位 2021年度1Q(前期) 月曜3限、月曜4限 演習 プログラミング 3〜4年

Contact

Purpose

本講義では、インターネットをはじめとするコンピュータネットワーク全般の基礎知識を身につけることを目的とする。代表的なネットワーク技術であるTCP/IPを学習対象に、パケット通信やネットワークアーキテクチャ、各種プロトコルの仕組み・役割を学ぶ。演習パートでは仮想環境を用いて、Linuxシステムによる小規模ネットワークの構築およびネットワークプログラミングを実施し、各種プロトコルやネットワークアプリケーションの動作を理解する。

Target

(1) コンピュータシステムにおけるネットワークの役割と重要性を理解し説明できる(2) 代表的なネットワークアーキテクチャを理解し階層構造の役割を説明できる(3) TCPやIPとはじめとする各種プロトコルの役割を理解し説明できる(4) 小規模なローカルネットワークとサーバアプリケーションの構築を通じてリモートホスト上での作業やトラブルシュートに必要な知識を身につける

Contents

  • ■ ガイダンス本講義の目的、構成、評価方法を説明する。各自のPC上に演習環境を構築し、SSH によるリモートアクセスと Linux の基本的な操作方法について学習する。

  • ■ コンピュータネットワークとTCP/IPの基礎コンピュータネットワークの基礎と代表的なネットワークアーキテクチャであるTCP/IPについて学習する。

  • ■ ネットワークインタフェース層ネットワークインタフェース層の役割と対象プロトコル(Ethernet)について学習する。パケットキャプチャを用いた実験的な演習を行う。

  • ■ インターネット層インターネット層の役割と対象プロトコル(IP、IPv6、ARP、ICMP)について学習する。関連コマンドを用いた実験的な演習を行う。

  • ■ トランスポート層トランスポート層の役割と対象プロトコル(TCP、UDP)について学習する。ソケット通信によるネットワークプログラミングの演習を行う。

  • ■ ローカルネットワークルータのはたらきと関連技術・プロトコル(NAT、ポートフォワード、DHCP)について学習する。LinuxベースのPCルータを構築し、外部と通信可能なローカルネットワークを構築する。

  • ■ ネームサービス名前解決の仕組みと対象プロトコル(DNS)について学習する。権威DNSサーバとフルサービスリゾルバを構築して複雑なDNSへの理解を深める。

  • ■ WebサービスWebの仕組みと対象プロトコル(HTTP)について学習する。Webサーバを構築して簡単なWebアプリケーションを動作させる。

References

(1) 基礎からわかるTCP/IPネットワークコンピューティング入門 第3版 / オーム社(ISBN: 9784274050732)(2) マスタリングTCP/IP 入門編 第5版 / オーム社(ISBN: 9784274068768)(3) コンピュータネットワーク 第5版 / 日経BP社(ISBN: 9784822284763)

Final Test

講義毎に課題(レポートもしくは記述式の設問)を提示し採点を行う。提出期限は次回講義の前日までとし、期限後の提出は大幅に減点されるものとする。

Task

最終課題の提出とし、提出方法は講義内で案内する

Grade Policy

各講義で提示する課題 40%、期末試験(最終課題)60%※出席率7割未満の学生については、評価対象としない(不可とする)

Message

■ 履修条件エンジニアリテラシーの単位を取得、または同等の知識を有すること。■ 演習環境について演習は各自のPC上に VirtualBox をインストールし、仮想環境に Linux を構築して実施する。各自 VirtualBox の動作要件を満たすコンピュータを準備すること。* 2021年1月現在、Apple Silicon「M1チップ」を搭載したコンピュータでは VirtualBox が動作せず、今後の対応も未定であるため利用不可とする講義内では Windows 10 および macOS(10.14 Catalina 以降) を前提としてインストール方法等を解説する。演習環境となる Linux の利用とコマンド操作の経験があることが望ましい。■ プログラミング言語について演習の一環としてPython および PHP によるプログラミングを実施する。これらのプログラミング言語の経験がない場合には、基本構文を理解できるよう事前に学習しておくこと。