Q1:一戸様:この記述でOKでしょうか A1:ゲラP15のDでやり忘れがありました。画面にも小さくですが「自動で接続する」というチェックが入っていれば「ONBOOT="yes"」なのです。 インストールの段階でONBOOT=yesになります。ですからインストールでの段階ではデフォルト「ONBOOT="no"」というのは必ずしもではあり ません。ネットワークコンフィグをすべて行えば最初から稼働します。 Q2:一戸様:LESSON1のとおりインストールすると、「ONBOOT="no"」になっているので、どこかで上のメモの説明 を入れて、ここまでは、この方法でネットワーク接続を可能にしたいと思います。OKでしょうか? あるいは、インストール時から、「ONBOOT="yes"」にする方法がありますか? A2.A1の回答の通リネットワーク設定画面のところで「自動で接続する」というチェックさえすれば最初からNICは稼働します。 ただし全てインストールしてONBOOT=noになっているなら下記のコマンドで簡単に一瞬で修正できます。 # cd /etc/sysconfig/network-scripts/ # sed -i -e 's@^ONBOOT="no@ONBOOT="yes@' ifcfg-eth0 Q3:(一戸様:この説明でOKでしょうか?) A3:そのifcfg-eth0ファイルを編集完了の後にservice network restartして反映します。 Q4:一戸様:上の画面でOKでしょうか? A4:厳密にはダメです。最後に"RTNETLINK answers"が出ていますが、これは既にネットワークが起動しているからです。 ネットワークが起動していない場合はOKですが、既に起動している場合はservice network restartすれば、"RTNETLINK answers" がでなくなります。このケースではA1でやっていれば最初からネットワークは起動しているためはservice network restart が正しいです。 Q5:(一戸様:説明を追加してください) A5:NM_CONTROLLEDはGNOMEやKDEのWIndows MangerにあるGUIのネットワーク設定と連動するという意味です。 ここがyesなら連動しますが、noの場合GUIで設定しても反映されません。 Q6:(一戸様:デフォルトNICの設定を他のNICが引き継ぐという意味でしょうか?) A6:いいえ、ルーティング上優先するという意味です。デフォルトゲートウェイは複数あっても良いのですが、優先順位が無いのでここに 記載するとそれを選択しネットワークのDG最優先はそこだ!という意味になります。通常はBBルータと接続しているNICが DEFROUTEになります。大手企業だとインターネットへ出てゆくエッジルータが複数あるケースもよくあるのでDGの優先を つけると通常はそこを経由しダウンすると別のDGをでてゆきます。NICのすべての設定にDGの設定は必要あるわけではありません。 Q7:一戸様:DNSを変更する場合、/etc/sysconfig/network-scripts/ifcfg-eth0やこの/etc/resolv.confなど、 すべての関連ファイルのDNSを変更する必要があるのでしょうか? A7:/etc/resolv.confは名前解決するサーバはどれ?の回答を記述するファイルです。この設定はネットワークの再起動は 必要ありませんし、namedサーバの起動も必要ありません。 DNSの設定としてnamedサーバの設定(named.conf,zoneファイル)を変更した場合は、namedサーバの再起動は必要です。ただし ネットワークの再起動は不要です。 Q8:一戸様:「127.0.01」の意味について説明してください。 A8:nameserverで 127.0.0.1の場合コンピュータ自分自身がnameサーバである必要があります。そうでないのならプロバイダー のDNSを設定するか、ルータのDNSProxyを利用するかです。 localhostはローカルホストIPアドレスです。ホストの内部(自分自身)のIPアドレスを示します。 localhost=127.0.0.1という意味です。専門的にはローカルループバック等と表現する場合もあります。 これは、例えるとキャッチボールする場合、相手がいてボールが返ってきますが、自分一人だと壁に当てて ボールを戻ってくるようにしないといけませんね。この状態がローカルループバックです。 CD/DVDの書き込みの世界でもこのループバックを使います。 Q9:一戸様:「127.0.01」の意味、「127.0.01」と「/etc/hosts」の関係について簡単に説明してください。 A9:上記の通りです。127.0.0.1は内部で利用する自分自身のアドレスですからNICカードが不要です。 ちなみに「127.0.0.1〜127.255.255.254」の範囲内ならlocalhostはどれを使っても問題ありません。 /etc/hostsに定義しているのはlocalhostという名前で呼ぶのがネットワーク習慣上一般的だからです。 この設定でUNIX上にある多数のスクリプトがlocalhostで呼び出されていますから設定がなくなると 不具合が生じます。 Q10.一戸様:上の設定について、設定内容を簡単に説明してください。 A10. /etc/hostsの記述形式) IPアドレス ホスト名 ホスト名 ...... ホスト名は複数設定できます。全て空白で区切って利用します。 IPV4とIPV6で記述が違います。::1 はIPv6用のローカルホストです。通常はIPv4で使うためあまり利用 することはありません。 Q11./一戸様:上の文章がどういう意味なのか、もう少しくだいて、説明していただけますか? A11.UNIX上で名前解決やユーザ管理する仕組みというのは複数存在します。古くはNIS、NIS+が有名です。現在は 廃れて使わなくなりましたが、一般的には/etc/hosts,/etc/passwd /etc/shadowを使う場合を'files'と表現 しています。nameサーバでホスト名解決する箇所は'dns'と表現します。 例) hosts: files dns 今回はホスト名を引く際に、どのように情報を検索をおこなってゆくのかを決めるためにhostsで始まるエントリー を編集対象とします。ここに記載するfiles dnsは/etc/hostsを最初に評価し、次にそこにないものはdnsサーバから 評価するという意味を示しています。hosts: dns filesの並び順ならdnsを最初に評価して、そこにないものは /etc/hostsから見つけるという意味になります。 Q12:一戸様:上の設定例の設定内容について説明してください。 A12:A11を参考にしてください Q13.一戸様:この「NETWORKING=yes」と、「/etc/sysconfig/network-scripts/ifcfg-eth0」の「ONBOOT="yes"」は、 どのような違いがありますか? / A13./etc/sysconfig/networkを最初に評価するためこの段階でifcfg-eth[x]のある/etc/sysconfig/network-scriptsを 読むかどうかを「NETWORKING=yes」で判断します。ifcfg-eth[z]の中のONBOOT=yesはNIC単位の起動を表します Q14.一戸様:このファイルを編集すると、HOSTNAMEやGETEWAYの変更を行えますか? A14.行えます。設定後にservice network restartは必要です。 Q15.一戸様:「service network start」または「service network restart」のときに、実行されるスクリプトと考えて いいでしょうか? A15.はい、そうです。 Q16. あるいは、もうちょっとていねいな説明が必要でしょうか? A16. ここは細かくは必要無いように思います。 Q17. 一戸様:上の2つのファイルについて、説明する必要がありますか? A17. /etc/sysconfig/networkだけで良いです。このファイルはネットワークカードの全体の共通部分の設定という位置づけです。 Q18. 一戸様:起動(start)と再起動(restart)の違いについて、説明してください。 A18. startはネットワークが起動してない場合に使います。restartはネットワーク設定を変更した際に状態を反映させるために 使う機能でネットワークが起動されてる状態で使うのが基本です。networkサービスの場合restartはstop&startを単純に行なっています。 Q19.一戸様:なぜ「lo eth0」が設定されたデバイスなのか説明してください A19. 現在設定されたデバイスは単純に言うとloは必須としてifcfg-eth[x]のスクリプトがあるネットデバイスを表しています。 現在活動中のデバイスはLINK UPしたデバイスです。 Q20.一戸様:下の2項目は、説明が必要ですか? A20.さらっとした簡単な説明でいいと思います。ipatblesはレッスン37である程度説明しています。SElinux難しいので カーネルのセキュリティモジュールを拡張機能を搭載したLinuxだと説明頂ければよいと思います。 Q21.一戸様:「lo」「127.0.0.1」が何を表しているのか、説明してください。LESSON21の質問と重複しますが、うまく回答を割 り振ってください。 A21.A8,A9で説明しているので良いかなと思います。 Q22.一戸様:ORIENTATIONでは、本書を読むにあたっての ・Windowsネットワークの設定 ・本来のサーバーはグローバルIPアドレスが必要だが、本書ではプライベートIPアドレスで、サーバー構築の練習をする などについての説明を書いてください。 A22. 別途書きます。 Q23.一戸様:本書の仮想マシンの場合、「BOOTPROTO=dhcp」になっていた場合、これを「BOOTPROTO=none」に書き換えるだけでOKでしょうか? A23.書き換えてifcfg-eth0を手動でかくのか、それともWEB GUIのネットワーク設定で作成するかが必要です。記述のあとは必ず service network restartが必要です。 Q24.一戸様:netstatコマンドの概要がわかるような説明を追加していただけるでしょうか? A24.ネットワークの状況を調べるためのコマンドです。オプションにより以下の状態を得ることができます。 1.ネットワークルーティング経路情報 2.ネットワークデバイスの通信状況 3.ネットワークの通信ポート起動状況、サーバ、クライアント間のセッション確立状況 Q25.一戸様:以下の記述の意味について説明してください。あるいは、コマンド実行例と実行結果の見方というような パターンで説明しますか? 現状、意味がわかりません。 A25.ここはP37講義1でまさに説明を行なっています。このレッスンではこのようなコマンドが有るという程度で紹介を 留めています。 Q26.一戸様:pingコマンドについての注意、補足説明などあれば、追加してください。 A26. tracerouteコマンドと同様にicmpプロトコルを使用しています。セキュリティアタックもこのプロトコルでそれなりに あるため封鎖しているネットワーク機器やFireWallも多いです。この場合は疎通確認ができないので注意が必要です。 Q27.一戸様:tracerouteコマンドの実行結果の見方について、簡単に説明してください。 A27.注意事項はpingと同じです。tracerouteコマンドは自サイトから到達サイトまでのホップするルータの入り口アドレスが 列挙されます。 msで表す速度表示ですが三回の施行結果を表示しています。先頭は入り口のルータアドレスです。 基準は100msで収まるならまあまあのレベルです。100ms以上ならネットワークの帯域が細いのかもしれません。 Q28.一戸様:nsloolupコマンドについての注意、補足説明などあれば、追加してください。 A28. nslookupのプロンプトが出た後に以下の設定を行った後にドメイン名を入力すると 欲しい情報を取ることができます。 set type=A アドレス定義 set type=MX  メール受信サーバの定義 set type=SOA  SOAレコード DNSレコードの更新間隔をみます。 set type=NS  ネームサーバの定義 set type=CNAME CNAME(ホスト別名)の定義 特によく使うのはMX情報とSOA情報です。 [root@localhost ~]# nslookup > set type=mx > yahoo.co.jp Server: 127.0.0.1 Address: 127.0.0.1#53 Non-authoritative answer: yahoo.co.jp mail exchanger = 10 mx2.mail.yahoo.co.jp. yahoo.co.jp mail exchanger = 10 mx3.mail.yahoo.co.jp. yahoo.co.jp mail exchanger = 10 mx5.mail.yahoo.co.jp. yahoo.co.jp mail exchanger = 10 mx1.mail.yahoo.co.jp. Authoritative answers can be found from: . nameserver = j.root-servers.net. . nameserver = c.root-servers.net. . nameserver = a.root-servers.net. . nameserver = g.root-servers.net. . nameserver = h.root-servers.net. . nameserver = m.root-servers.net. . nameserver = k.root-servers.net. . nameserver = l.root-servers.net. . nameserver = b.root-servers.net. . nameserver = e.root-servers.net. . nameserver = i.root-servers.net. . nameserver = d.root-servers.net. . nameserver = f.root-servers.net. > set type=SOA > yahoo.co.jp Server: 127.0.0.1 Address: 127.0.0.1#53 Non-authoritative answer: yahoo.co.jp origin = yahoo.co.jp mail addr = postmaster.yahoo.co.jp serial = 2012092823 refresh = 1800 retry = 900 expire = 86400 minimum = 900 Authoritative answers can be found from: . nameserver = j.root-servers.net. . nameserver = m.root-servers.net. . nameserver = l.root-servers.net. . nameserver = f.root-servers.net. . nameserver = e.root-servers.net. . nameserver = h.root-servers.net. . nameserver = a.root-servers.net. . nameserver = d.root-servers.net. . nameserver = g.root-servers.net. . nameserver = c.root-servers.net. . nameserver = i.root-servers.net. . nameserver = k.root-servers.net. . nameserver = b.root-servers.net. > サイトのホスティング引越しする際はMXレコードとSOAレコードはかなり事前チェックを行います。そうしないと DNS変更のタイムラグが大きく発生するからです。 Q29.一戸様:上の実行結果が何を表しているのか、簡単に説明してください。 A29. Non-authoritative answer: <-- これはキャッシュのリゾルバが返したことを示します。 以下は 203.216.243.240の実ホスト名がf11.top.vip.tnz.yahoo.co.jpであることを示しています。 また240.243.216.203.in-addr.arpaは逆引きアドレスです。 240.243.216.203.in-addr.arpa name = f11.top.vip.tnz.yahoo.co.jp. Authoritative answers can be found from: <--詳細なサーバ情報は以下から見つかるという意味です この下に有るエントリーはyahooネームサーバの情報で逆引き、正引きが表示されています。 a.in-addr-servers.arpa internet address = 199.212.0.73 これはTLD要するに全世界のルートサーバの一覧を表示しています。 Q30.一戸様:上の文章、問題があれば修正してください。 A30.少しだけ修正しました。 サーバープログラムは、インターネットを通じてクライアント端末へさまざまなサービスを提供するため、サービスと ネットワークは密接な関係にあります。このため、サーバーがどのようにネットワークを利用しているのかを知っておくと、 サーバートラブルを解決する糸口になります。本LESSONでは、端末がサービスを利用する際、サーバー上のポートを通して サービスを利用できることを確認しましょう。 Q31.一戸様:実習はあくまで読者がコマンドを実行して、本書の画面例と同じ結果を得られるものでなければなりません。 ここは、サーバーを起動してからnetstatを実行するとか、あるいは他の切り口から、同様の内容を説明してください。 その際、TCPとUDPの違いについても、簡単に触れておいてください。側注でもかまいません。 A31. [1]ネットワーク上でどのようなサービスが待ち受けているか? 本実験に関して前提としてクライアントとサーバの2台が必要となります。VirtualBOXでCentOSサーバ構築を行なっている 方はWindowsパソコン1台で実験できます。Windowsでブラウザを起動し、VirtualBOXでCentOSサーバを運用という状態で 操作します。 実験にあたりWEBサーバの導入とFirewallのiptablesの停止を行います。 [root@localhost ~]# yum install httpd [root@localhost ~]# service iptables stop これらの作業はWEBサーバのアクセスをnetstatで確認するための作業です。iptabelsはデフォルトでは必要ポートがクローズ されているため一時的に停止します。(iptablesは後のレッスンで講義します) まず最初にCentOS側でWEBサーバを起動します。CentOSのデフォルトコンテンツで試してみましょう。 [root@localhost ~]# service httpd start ブラウザからアクセスを行います。 本書ではサーバ側はIPアドレス192.168.5.112という想定です。ご利用の環境に合わせて サーバ側のIPアドレスを確認してhttp://サーバIPアドレス/で確認してみましょう。 ##画像 netstat.png ## 上記は通信が既に完了(ESTABLISHからCLOSE)し終了待ちの状態を表しています。 先頭のProtoはプロトコルを示しています。 Recv-Q Send-Qは受信と送信を表しています。 LOCAL ADDRESSはサーバ側、FOREIGN ADDRESSはクライアント側を示しています。 Stateは通信フェーズが現在どこにあるのかを表しています。 netstatは通信のハンドシェーク状態を表すコマンドであるため、このステータスを確認することで通信の問題を探ることが できます。各ステータスは下記図を参考にみてください。 ##資料 handshake.ppt ## 以下のnetstat結果では接続を待っている状態(LISTEN)が確認できます。実験でWEBサーバがLOCAL ADDRESSで80番ポートで 待ち受けしている様子が確認できると思います。 クライアント側(FOREIGN ADDRESS)から要求があると最後のnetstatの結果ではSSHの接続が確立されてESTABLISHEDになっています。 サーバ側は22番で待受け、クライアント側が9633ポートから接続していることがわかります。 ##画像 netstat_listen.png ## [2]プロトコルの名称・ポート番号からサービスを特定する <--ここ以降は、以前の記述でお願いします。 Q32:一戸様:書き直した実習の内容に合わせて、ここも書き直してください。 A32: ##冒頭の解説はそのままでOK それでは、実際にnetstatの読み方について解説していきましょう。 実習で行ったWEBサーバの接続を頻繁にリロードしてその間にnetstatを実行してみましょう。 ##画像  netstat_kougi01.png ## 上記結果を見ると、sshからの接続は1つのエントリーですが、WEBサーバーは複数のTIME_WAIT状態のエントリーがあります。 WEBサーバの通信ではESTABLISHEDは通信状態が長く続かないとnetstatでは取れないため、多くはTIME_WAITやCLOSE_WAIT になります。 又パフォーマンスを上げるために実際には1コンテンツに対し複数の接続を行なっている接続も場合によっては観察できます。 WEBブラウザ側は表示速度を上げるためにセッションを複数はることはよくあります。(IEで標準MAX4セッション) このように、netstatコマンドを使うことでサーバーの仕組みや挙動も観察できます。 もし、アプリケーションレベルでどのポートで利用しているのかを調べたい場合は、下記のオプションが役に立ちます。 下記はTCPの接続待受と確立の両方を表示しています。 ##画像 netstat_kougi02.png ## 下記はLISTENの待ち受け状態の表示のさせ方です。 ##画像 netstat_kougi03.png ## ○表示ステータスについて ESTABLISH  接続が確立している状態 TIME_WAIT  接続終了時に終了ACK待ち状態 CLOSE_WAIT  終了処理の途中(受付状態) FIN_WAIT  終了処理の途中(送信状態) SYN_SENT  接続リクエスト送信済み LISTENING 通信待ち ○表示項目について Proto: プロトコルの種類 Local Address: ローカルのアドレスと利用ポート Foreign Address:外部接続端末のアドレスとその利用ポート State: 表示ステータスを参照の事。 ◎特定のサービスのポート番号を簡単に調べる Q33.一戸様:ここは、このままでOKだと思います。 A33.わかりました。 Q34.一戸様:上の実行結果について、簡単に説明してください。 A34.特に説明は必要無いです。OS上のプロトコル名から番号を割りだすための手法を案内しているため   画像の上の説明で十分です。netstat等で出てくるプロトコルに稀に知らないプロコル名が存在し   ポート番号は何番なのか知るために行なっている事なのです。 Q35.一戸様:なぜimapはtcpとudpを使うのか、簡単に説明してください。 A35.ここもあえて説明する必要はありません。上記と全く同じ理由です。 ちなみに現在のimap v3はtcpしか使いません。imap v2時代 udpを使っていたのかもしれませんね。