• ベストアンサー

ネットワークの学習方法

ネットワークの学習方法についてお聞かせください。 私のレベルは、IPAの基本情報技術者資格を持っている程度です。 解答いただける方に参考になるよう申し上げておきます。 では、質問の内容ですが、 FTPやHTTPといったデータ転送について学習するには、 何をキーワードに、何から始めたらよいのでしょうか? ネットワークについてインターネット上で情報を集めてみたところ、 たいてい書かれていることは、IPアドレス、プロトコルやルータといった根本や概念を説いた内容がほとんどです。 しかし、これらを理解したところで、 ネットワークがどのように動いているかは分かっても 実際にLANおよびWANを利用し、独自通信を行うアプリの具体的実現案になりません。 例えば、東京にある端末で、大阪にある端末のファイルをとってくるような通信を確立するにはどうすればよいのでしょうか? このようなことについて学習できる書籍やサイト、その他方法を探しています。 どなたかよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • K_Senryu
  • ベストアンサー率100% (6/6)
回答No.2

ネットワークを学ぶには、やはりRFCを読み込むことが重要だと思います。 RFCを読んだ上で、クライアントやサーバを作ってみると理解が早いです。 FTPはRFP 959、HTTPはRFP 2616で、これらは(多分)日本語化されているの で学習もしやすいです。 もちろん、#1さんの回答のように、パケットを覗いてみるのも大切ですね。 情報処理技術者試験のネットワーク試験の対策資料を見てみると、もっと 体系的に学習できるかもしれません。 > 例えば、東京にある端末で、… 普通にFTPで良いと思います。セキュアな通信でということならば、 SFTPとかFTP over SSHとかで検索するといろいろ出てきます。 あと、質問内容にわからない点があります。 > しかし、これらを理解したところで、 > ネットワークがどのように動いているかは分かっても > 実際にLANおよびWANを利用し、独自通信を行うアプリの具体的実現案になりません。 これは、「独自のプロトコルを作成したい」ですか? それとも、「既存のプロトコルを利用したソフトウェアを作成したい」ですか? 後者であれば、冒頭に挙げた、「RFCを読め」となりますし、前者であれば、 なぜ既存プロトコルでは駄目なのか、再度考え直す必要があると思います。 それなりの歴史を持つ分野ですので、先人の知恵を生かすのも技術でしょう。

参考URL:
http://www.ietf.org/rfc.html, http://www5d.biglobe.ne.jp/~stssk/rfcjlist.html
OKbokuzyo
質問者

お礼

K_Senryuさん回答ありがとうございます。 非常に詳しく回答していただいたおかげで、 少し方向性が見えたように思います。 >これは、「独自のプロトコルを作成したい」ですか? >それとも、「既存のプロトコルを利用したソフトウェアを作成したい」ですか? 言葉足らずですみません。 おっしゃる通り、これは後者の意味あいで書いたつもりです。 RFC、記憶の片隅にあったかないかくらいの言葉ですが、 添付してくださった参考URLを開いてみたところ、 その量の多さにびっくりしました。 じっくり時間をかけて学習していこうと思います。 ありがとうございました

その他の回答 (3)

  • cdsdasds
  • ベストアンサー率52% (114/217)
回答No.4

まず確認したいのですが、「独自通信を行うアプリの具体的実現案」が必要な理由は何でしょうか。 >例えば、東京にある端末で、大阪にある端末のファイルをとってくるような通信を確立するにはどうすればよいのでしょうか? FTPやHTTPではだめなのですか。 何故こんなことをお聞きするかというと、現在のLANやWAN上のプログラムは大半が標準化された方式を使うことになっていて、まったく1から作るということは余り無いからです。 独自のプログラムが独自のポートを使うのでポートをあけなければいけないとかの場合、運用側からもwebだけでいいことにならないのとか言われます。いいことは余り無いはずです。 OSI参照モデルは習われたと思います。昔は必要なら全ての階層のプログラムを開発者が作ったのですが、現在は自分の関係する階層以外はほとんどの場合で標準のものを使うはずです。 あなたが知りたいのはどの階層でしょうか。 プロトコルならプロトコル名、パケットやフレームの構造ならTCP/IPとかEthernetとかを検索すれば概念だけでなく必要な全ての情報が出ています。 とりあえずわかりたいというのならCCNAとかの教科書をお読みになることをお勧めします。

OKbokuzyo
質問者

お礼

cdsdasdsさん回答ありがとうございます。 >>FTPやHTTPではだめなのですか いえ、既存プロトコルを用いたデータ転送について学びたいという意味でしたので、FTPやHTTPのことです。 別の方からもご指摘いただきましたが、 質問文の書き方が悪く、少々混乱させたみたいでもうしわけありません。 >>とりあえずわかりたいというのならCCNAとかの教科書をお読みになることをお勧めします そうですね、やはり書籍から体系的に勉強して、わからない部分をネット等で調べていこうと思います。 CCNA関連の書籍なら資格も取れれば一石二鳥ですしね。 ありがとうございました。

回答No.3

私の場合 資格はなにもないですが ネットワークのパケットをLinuxのアプリでRAWパケットを作って 実際に送信しTCPDUMPで確認しながら学習しました Linuxはソースが公開されていますので まずはここから学習するのがいいかもしれません 自分で作るのと 見るのでは かなり違います

OKbokuzyo
質問者

お礼

C_is_Bestさん回答ありがとうございます。 RAWパケット?TCPDUMP? なにやら聞き慣れない言葉が多数ですが、 Linuxをのせた端末から送信したパケットを 別端末で拾って解析を行うということでしょうか? 勉強不足でお恥ずかしいかぎりです。 Linuxも最近注目度がかなり高くなってきているみたいなので こちらも非常に勉強してみたいと思っています。 この機会にあわせてやってみるのがいいかもしれませんね。 ありがとうございました。

  • ryuta_mo
  • ベストアンサー率30% (109/354)
回答No.1

パケットモニタで実際にどのような通信が行われてるのか見てみるというのはどうでしょう。 http://homepage2.nifty.com/spw/software/vigil/

OKbokuzyo
質問者

お礼

ryuta_moさん回答ありがとうございます。 過去に昔のタイプのハブ(Macアドレスによるルーティングをしないタイプ)を用いて、 LAN上に流れるブロードキャストを拾う実験をやったことがあります。 それのWAN版(?)のようなものでしょうか? HTTP通信は平文でデータが送られるので危険とは聞きますね。 確かにこのソフトを使うとはやく理解できそうです。 検討しようと思います、ありがとうございました。

関連するQ&A

  • ネットワーク技術の勉強方法がわかりません。

    明後日テストなのですがいくらやっても覚えれません。 内容としてはプロトコルと伝送路・符号化と伝送・ネットワーク(LAN・WAN)・通信装置です。どうしたらいいですか?

  • ネットワークのプロトコルについて

    TCP/IPやHTTPやICMPなどの関係について質問させてください。 上記の各プロトコルについては、それぞれ、適した通信に使われる ルールのようなものだと解釈しています。 しかし、これらの関係については良く解っていません。 例えば、ICMPは、TCP/IPで接続された上で利用されるプロトコルの ようですが、プロトコルの上にプロトコルが乗っかると言うのは良く 理解できません。等質問以前にプロトコルについて詳しく学習する 必要があるのかもしれませんが、自身で何が解っていないのかも うまく整理して説明出来ない状態ですが、ネットワーク関係の プログラミングの解説書等を読みプロトコルが説明に入ると思考が 停止してしまうので、理解出来るようにどうか助け舟を出して頂け ませんでしょうか?

  • HTTPプロトコルは何語で書かれているのか

    Webページから情報を得るための通信方法の手順がHTTPプロトコルとよく説明されています。実際問題としてプロトコルというものの実体がわかりません。パケット通信をするとか、そういう抽象的なことではないのです。Webページをホームページビルダーでしか作ったことがない人に、あれはHTMLというルールでつくられていると言われてもわかりません。実際にメモ帳で簡単なタグなどを利用し、作成して初めてわかります。HTTPプロトコルとかFTPプロトコルとは何語で書かれているのですか?そしてそれはインターネットエクスプローラーのソフトの中に書かれているのですか?もちろん詳しい説明はわかりませんから、1行目の内容より少しでも踏み込んだ具体的な内容を知りたいのです。

  • 突然インターネットが接続できなくなる

    会社の事務所内で起こっている問題です。 突然、すべての端末でインターネット接続(HTTP・FTP通信)ができなくなります。 ですが、一方でメールの送受信は問題ない・・・という状況が度々発生します。 ルーターの再起動をしてどうにか直していますが、その場凌ぎですので どうにかして根本的な解決ができないかと悩んでいます。 HTTP・FTP通信はできないのに、SMTP・POP通信やLANは問題ない、という事はありうるのでしょうか? ・IPアドレスは自動取得です。 ・端末とルーターを直につないでも変わりません。 ・ネットワーク内の端末数は3~10台と変動しますが、何台でも問題は出ます。 ・ある特定の端末がある時に問題が出るというわけでは無さそうです。 ・ルーターはYAMAHAのRT57iです。 ・ルーター交換(機種は忘れました...)も試しましたが、状況は変わりませんでした ネットワーク関係は詳しい程ではないので、 もし情報に不足があればご指摘頂けるとありがたいです。

  • ネットワークコンピュータへの出し方

    本社と支店間を専用線で結んでいるのですが、本社の端末から支店の端末、またその逆をネットワークコンピュータ上に出すことは可能ですか?また、できるのなら方法も教えて下さい。 コンピュータの検索で出るのは確認済みです。 ちなみに、プロトコルはTCP/IPです。

  • プロトコル制限のできるプロバイダってある?

    WebやFTPといった通信をプロトコルレベルで規制できるプロバイダってあるでしょうか? やりたいことは、インターネットで特定多数の端末と通信したいのですが、悪意を持ったWeb、FTPのアクセスをプロバイダレベルで防御したいのです。 (Web、FTPアクセスをはじくっていうイメージ) 情報をお持ちの方、プロバイダ業者の方、ぜひ教えて下さい。

  • セキュリティの学習の一環として

    おはようございます、お世話になります。 セキュリティの学習の一環として教えて頂きたいのですが カスペルスキープレミアムのレポート確認で調べたのですが プロトコルの方向: 送信 プロトコル: TCP ステータス: ブロック リモートアドレス: 192.168.1.1 リモートポート: 53 ローカルアドレス: 192.168.1.6 ローカルポート: 51051 ゾーン: すべてのネットワーク ユーザー種別: 未定義 ルール: domain このネットワーク情報はどのように動いているのか教えて下さい。 ご教示お願いします。

  • LANネットワークの高速化

    社内LANを組んだのですがネットワークの速度が遅く悩んでいます。どなたか詳しい方、ネットワークを高速化させる為のアドバイスを是非教えて下さい。 Windows2000サーバーにWindows2000とWindows98のクライアントをワークグループで接続しています。別の階にも端末があるためHUBをカスケードして使用しております。また、1台のWindows2000端末にはLANボードを1枚追加しIPの違う別のネットワークとの通信もしております。 プロトコルはTCP/IPを使用しIPは手動設定しております。 100Baseで通信しているはずなのですがネットワークのリソースはかなり重くなっています。ネットワークを高速化させる為のアドバイスを是非お願い致します。

  • ネットワークに入れなくなった

    会社の端末を立ち上げるとネットワークに入れなくなっていました。 通信が可能なことを確認したLANケーブルを変えたりしましたが、ダメでした。(デバイスマネージャも確認しました。) 少し気になるのがあるのですが、通信できないときに同じハブを使っている隣の端末にインストール(パーティションソフト)をインストールしていました。インストールが終わると通信が不具合が解消されました。 何かしら関連があるのでしょうか? 関連がないにしろ、この不具合の原因と解消方法がわかる方は教えて下さい。 よろしくお願いします。

  • 通常FTPではどちらのモードが使用されるのでしょうか?

    通常FTPではどちらのモードが使用されるのでしょうか? ルータのフィルタリングをかけているのですが、FTPを行う場合、 デフォルトでは、アクティブモードなのでしょうか? それともパッシブモードなのでしょうか? ●アクティブモードの場合  21/tcpにて制御  データ部分に関しては、サーバから20/tcpで通信が始まります。 ●パッシブモードの場合  21/tcpにて制御  データ部分に関しては、サーバが任意に決める形であると思います。 つまり、どちらの通信に関しても、TCP(EST)の戻りパケットのみだけだと通信が出来ない 状態だと思います。(サーバからsynパケットが始まるため。) 今回ルータのフィルタリングで ●lan=>wan  lan側サブネット=>wan  src:すべて  dst:20-21 ●wan=>lan  wan=>lan側サブネット  src:20-21  dst:すべて と定義しました。(通常は、tcpプロトコルなら、戻りパケットにて許可を与えればいいと 思います。) 【質問1】まず、ftpと一般的に言った場合のモードはどちらのモードとなるのでしょうか? 【質問2】パケットフィルタリングの考え方としては、戻りパケットではなく、      TCPプロトコルとして定義しなくてはいけないのでしょうか? の2点となります。 ftpについては、未だ通信の流れをあまり理解していないので、よろしくお願いいたします。