DOUG LLOYD:あなたがしている場合 これらのビデオを見て 私たちはお勧めためには、 私たちは、受けようとしています 文化シフトのビット。 今、私たちは開始しようとしているため、 インターネットとウェブの話 技術。 だから今まで、私たちはしました 本当にCの多くをやって そして、私たちはしてきたとき 我々のプログラムを実行して、 私たちはそれらを実行してきました コマンドラインから。 それは、ユーザーが持っているどのくらいですかなり プログラムと対話して 我々は書くこと。 彼らは、何かを要求するために何かを選びます ターミナルウィンドウで行われ、 そしてそれは行われています。 時には、永続的な場合があります その後残っているデータ。 しかし、それはかなりそれです。 これは、コマンドラインでです。 これは、ユーザーが対話できる唯一の​​方法です。 この点から前方に、 我々が開始するつもりです ユーザーように移行 当社のウェブサイトと対話することができます。 だから我々は書くことになるだろう C言語で記述されていないウェブサイト、 しかし、他の様々な書かれています PHPなどのプログラミング言語、 そして、それはヘルパーの言語のようなものです、 HTML、CSS、等が挙げられます。 だから我々は、開始するつもりです それらの事について話。 我々はウェブに入る前に 自身のプログラミング、 私はそれはおそらく良いことだと思います アイデアは、バックステップと話を取ります どのくらいのコンピュータと 人間はWeb上で対話します。 だから、このビデオでは、実際にプライマーであります インターネットへの基本的なガイド。 さて、ここでの注意点はあります CS50は、ネットワーキングのクラスではありません。 だから私たちは話をすることになるだろう ここではかなりハイレベルです。 私たちはするつもりはありません 任意の低レベルに入ります すべてのこのようなものがどのように動作するかの詳細が表示されます。 あなたが興味を持っている場合 その中で、私は強く思います クラスを取ることをお勧めします コンピュータネットワーク上で。 そして、私たちも言うかもしれません 白い嘘または2つだけ 製造目的のために 明確な一般的な理解。 そうは言ってそれでは、についてお話しましょう どのように我々は、インターネットとの相互作用。 そこでここではあります。 ここでは私たちです。 我々は非常にことを楽しみにしています 、インターネット上になっています 我々はすべて知っているように、猫がぎっしり詰まっています。 今、私たちはただに接続します このようなインターネット? まあ、おそらくありません。 直感的に、あなたが知っています 例えば、言うことを、 あなたのWi-Fiを変更したとき お使いのコンピュータのネットワーク、 あなたは1と呼ばれる、インターネットを見ていません それはちょうどそう起こっていない限り お近くのWi-Fiの名前です。 右? これは通常、自宅のようなものです。 あなたが仕事にしている場合、または、それがかもしれません あなたの会社の名前です。 一つだけではありません オプションは、インターネットと呼ばれます。 それで何かまたは一部 物事が時の間に存在します 私たちはインターネットに接続したいです。 それらのものは何ですか? まあ、我々はそれについて話をするつもりです。 また、について話をするつもりです 重要なことのいくつかの 我々はできるようにするために必要 インターネットに接続します。 そして、これらの最初の 物事は、IPアドレスです。 だから、おそらく聞きました 前項のIPアドレス。 どういう意味ですか? さて、IPアドレスです 基本的に一意の識別子 ネットワーク上のコンピュータの。 ただ、すべての家庭のような、または 事務所は固有のアドレスを持っています これは1つのメールを送信することができます。 それならば同様に、すべてのコンピュータ データを受信したり、データを送信したいです、 固有のアドレスを持つ必要があります。 時の情報だから 送信または受信され、 それから送信または受信されています 正しい場所へ。 私のように、このアドレス指定方式、 IPアドレス指定と呼ばれている、と述べました。 IPは、インターネットプロトコルの略です これは、我々は再びまもなくについて話しましょう​​。 さて、IPがどのように見えるかに対処するのでしょうか? まあ、スキームは基本的でした、 それが最初に実施されたときに、 すべてのコンピュータを与​​えるために ユニークな32ビットのアドレス。 それは多数のビットです。 それは40億のアドレスです。 一般的に、代わりに使用して 16進数、これ 我々は、のコンテキストで以前に使用されてきました C言語でポインタは、アドレスについて話をします 我々は通常、IPを表します より少しのアドレス 人間に優しいの それらを表現する方法、 8ビットの4つのクラスタとして 10進数で表します。 人間は頻繁に話すことはありませんので、 進、あなたがプログラミングをしている場合を除きます。 しかし、インターネットを使用する人々は、 必ずしもプログラマではありません。 そしてそれが容易 そして彼らのためにアクセス可能 何について話すことができるように彼らの IPアドレスは、おそらく場合、それらであります 誰かを呼び出す必要があります 何かのトラブルシューティングを行うには、 それはより多くのそれを作るために良いでしょう 従来の一般的な進数 フォーマット。 だからIPアドレスだけに見えます かなりこのように、w.x.y.z、 どこにこれらの文字の一つ一つ 非負の値を表します 0〜255の範囲です。 ことを思い出して、8ビット数 256の異なる値を保持することができます。 私達の範囲は0〜255である理由となるようです。 そして、私たちは8の4つのクラスタを持っています 32ビットの総計のためのビット。 だから、IPアドレスのかもしれません このような何かを見て。 これが一般的なの一種であります デフォルトのIPアドレス、123.45.67.89。 それらのすべてが0の範囲であります 255は、そのためには、有効なIPアドレスです。 ここではハーバード大学で、すべての 当社のIPアドレスが140.247で始まります。 それは、ちょうど方法のIP この地理的領域内のアドレス 割り当てられています。 そして、これはIPアドレスであるかもしれません それはハーバード大学でここに存在する可能性があります。 私が言ったように、もしすべてのIPアドレスそう 32ビットであり、我々は、約40億を持っています 少しを与えるために 以上40億。 しかし、我々は一種の権利、問題を見ることができますか? 世界の人口は今何ですか? まあ、それはどこです 70億人の北。 そして、西洋で 少なくとも、ほとんどの人 複数のデバイスを持っています インターネット接続が可能。 私はここ1を持っています。 そして、私は私のポケットの中に別のものを持っています。 そして、私は私のオフィスで1つのバックを持っています。 そして、そのためには、3です。 そして、それはあってもカウントされません。 私も、家にあるもの。 そして、その結果、右の問題のようなものですか? 我々は、少なくとも70億人を持っています のみ40億のアドレス。 そして、すべてのデバイスを想定します 一意に識別することができます。 我々はいくつかの回避策を開発しています この問題に対処するために、 何かは、プライベートと呼ばれます 我々はないですIPアドレス、 このビデオに入るために行きます。 しかし、基本的に、それがさらに可能 偽の種類にウェブ、インターネット、 あなたはユニークを持って少しアウト プライベートアドレスを持つことによってアドレス し、それらを通じファネリング 1つのアドレス、どの 多くの異なるコンピュータで共有されています。 しかし、それは本当に長期的な修正ではありません。 それさえも固定されていません 永遠に続くつもり。 そして、私たちは別のを持っている必要があります これに対処する方法。 私が言ったように、我々は、約40億でした。 しかし、それはことはないだろう 右、十分に良いこと? そしてそれが持っている方法 そこに決定され、私たちはしています これに対処するためにされて行きます 長いIPアドレスを行います。 32ビットアドレスの代わりに、私たちがしています 128ビットのアドレスを持つことになります。 だからではなく、40億の アドレスは、我々が行っています アドレスの膨大な数を持っています、 これは3,400億億億です 億ので、IPアドレスがたくさん。 そして、この新しいスキームでは、IPv6と呼ばれています それが呼ばですか一般的です。 古いスキームは、IPv4です。 それは問題でのビットです この問題があったこと 本当に長い時間約知られています。 そして、あなたはこの中にたくさん表示されます コンピュータおよびコンピューティングの文脈。 我々は予想した問題でもいいです。 しかし、我々はそれらを扱うに悪いです 私たちはそれらについて知っているにもかかわらず。 だから、IPv6はしばらくの間、回避されています。 そして唯一の最後のカップルで 年は実際に私達を持っています これらのIPv6アドレスを段階的に導入を開始 IPv4アドレスを段階します。 しかし、いくつかの場所では、それらを持っています。 そして、彼らは同じように見えます 通常のIPアドレスに。 しかし、彼らはずっと長いです。 だからではなく、今4を持っていることの あなたのアドレスの8バイトのクラスター、 我々は今、16バイトの8クラスタを持っています。 そして、8回16は128です。 そして、我々は以下にこれらを表します 従来の16進形式。 16ビットの数を有することを意味するので 代わりに、0〜255の範囲であることの、 私たちは、0〜65,535の範囲を持っていると思います。 そしてそう束を持ちます 貼り合わせたものの 読みは非常に困難であろう。 そして、私たちは通常の六角を使用 単に利便性のうち。 だから、一般的なIPv6アドレス このようになります。 それは確かによりずっと長いのです 我々の前に見てきたIPv4アドレス。 しかし、これは有効なIPv6アドレスになります。 この1は、IPv6アドレスについてもです。 この1は、Googleに属していることを起こります。 そして、通知があります そこにゼロの束。 時には、これらのアドレス 限り取得することができます。 そして、我々はまだしているので、 かなり初期のIPv6では、 時々の大きな塊がある場合もあります 我々が必要としないことをそこにゼロ。 あなたが大声でこれを読んでいる場合は、 それは2001.4860.4860.0.0.0.0.8844です。 それは右、たくさんのようなものですか? だから、の束が表示された場合 ゼロ、あなたは時々かもしれません 、このようなIPv6アドレスを参照してください 彼らはゼロを省略する場合は その代わりに、二重コロンを使用しています。 しかし、これはOKです。 我々はそこにあることを知っているので 8個別の塊になるはず。 そして、そのように明示的にも黙示的に、我々は4を参照してください。 だから我々は、4つのセットが存在しなければならないことを知っています このようなゼロの、それはそれを埋めます。 だから時々、あなたが見るかもしれません IPv6アドレスを持ちません 我々はここで行うように8は、チャンクを分離しました。 あなたはそれがこのように見て表示されることがあります。 そして、それはちょうどことを意味 あなたが表示されていないすべてのもの ここで、その二重コロンの間 分離ちょうどゼロです。 じゃあ良いよ。 私たちは少し詳細を知ります IPについて今すぐ対処しています。 しかし、どのように我々はそれらを得るのですか? 私達はちょうど私たちが望むものを選択することはできません。 我々はそれをした場合、我々は戦いを終わるかもしれません 同じIPアドレスのために誰か。 それとも誰かが持っている可能性があります 以前にそれを選びました。 我々は試してみて、それを取るならば、我々はつもりです 問題のビットに実行します。 だから私たちは選ぶことができません 私たちが望むのIPアドレス。 だから我々が得る方法 IPアドレスはどこか 当社のコンピュータとの間で インターネット、そこにその大きなインターネット、 DHCPサーバーと呼ばれるものがあります、 動的ホスト構成プロトコル サーバー。 これは、テキストの大きな一口です。 しかし、本当にそれはそれがないすべてであります あなたのIPアドレスを割り当てます。 あなたのDHCPサーバーがリストを持っています それが有効に割り当てることができるアドレス。 そして、それはあなたに1を与えます。 それはほとんどすべてそこにあります。 さて、DHCPの前に、このタスク アドレスを割り当てます システム管理者に落ちました。 だから、実際の人が持っているだろう コンピュータを手動で割り当てるには アドレスしたとき ネットワークに接続されています。 だから、DHCPはちょうど一種のこのを自動化 あなたのIPアドレスを与える方法。 しかし、それはあなたがそれを得る方法です。 それはちょうど、プログラム実行中です あなたがたとの間のどこかに とのバンクを持つインターネット IPはそれが出て与えることができることを対処しています。 そして、あなたがに接続するとき ネットワークは、それはあなたに1を与えます。 それでは、この図を再検討してみましょう。 どこか、あなたとの間 インターネット、DHCPサーバーがあります。 OK。 だから、それは良いことです。 それでは、DNSについて話しましょう​​。 だから我々は話をしましたが、 これらのIPアドレス。 そして、私たちは私たちがしている場合ことを知っています 一意に識別するために行きます インターネット上のデバイスに、 固有のアドレスを有していなければなりません。 そして、我々はそれを訪問することができ 私たちがしたい場合に対処。 しかし、あなたはおそらく、入力したことがありません 192.168.1.0のようなもので お使いのブラウザには、右? あなたは数字を入力しないでください お使いのブラウザに。 通常は、人間が読める名前を入力 google.com様またはcs50.harvard.edu、 右? これらは、しかし、IPアドレスはありません。 したがって、このサービスが存在します ドメイン名と呼ばれます IPアドレスを変換するシステムは、DNS、 人間の理解できる言葉へのアドレス ずっと記憶に残るですかフレーズ 4つの数字の組を覚えるより 8のか、すぐに、セット 16進数。 それは右、本当にやりがいのでしょうか? 前に考えてみて 携帯電話の日。 あなたはあなたを覚えていました 友人の電話番号。 それは厳しい得ている可能性があります 少しの間の後。 同様に、あなたがしたい場合 ウェブサイトの束を訪問します、 あなたはおそらくしたくありません 数字の束を覚えています。 あなたはむしろ言葉の束を覚えていると思います。 したがって、このマッピングは、この翻訳の 人間が読める名前に数字のセット 種類のDNSになります ウェブのイエローページ。 そして、あなたは考えることができます それそれだけだかのように 0.0.0.0すべてから実行されている巨大なリスト ウェイダウン255.255.255.255に、どの 最高possible--になります 0からのすべての4の255Sのフルレンジ 億っぽいIPv4アドレス。 私は上のものを作りました トップとボトム。 しかし、そこに真ん中の1 実際のIPアドレスです。 だから我々は、74.125.202.138を訪問した場合 どうやらそれは、そのサイトに変換 そこに、一体それは何かio--? まあ、マッピングするすべての名前はありません 実際に右、それが何であるかをクリアしますか? だから、時には誰か 誰がIPアドレスを所有しています そのホストに何かを名前を付けます ことを彼らは実際にはありません。 例えば、そのIPアドレスあなたの場合 そこに行き、実際にはgoogle.comです。 しかし、Googleはたくさん持っています 異なるサーバーの。 そして、彼らはすべてのgoogle.com、それらを呼び出すことはできません。 そこで、彼らは彼ら自身を持っています 変換するための内部システム 実際にどのようなサーバーにgoogle.com そのIPアドレスが接続されています。 そして、別のがあります 間に存在するシステム その無意味な言葉を翻訳します ここでgoogle.comに。 しかし、我々はそれに取得することはできません。 そして、同様のため IPv6sは、私たちも行っています イエローページを持っています それは多くの大きくなるでしょう。 同様に、内 真ん中のはそれがありましたthere-- IPv6を見つけるのは難しいです 正当だったアドレス。 しかし、私はGoogleのための1つを見つけました。 しかし、それは、Googleのアイルランドのウェブサイトです。 しかし、あなたはそのIPv6アドレスに行けば、 お使いのブラウザはIPv6対応した場合、 それはにあなたをもたらすだろう Googleのアイルランドのホームページ。 だから、そこに行きます。 しかし、これは右、完全に真実ではないのですか? このシステムは、右、面倒なようですか? 4の膨大なリストがある場合 億ルックアップする持っているもの、 それはかなり大きなです。 何のイエローページはありません 世界の、右? あなたはまだ黄色を取得する場合 you--に配信ページ 私は他の日の鉱山を持って、 私はちょうどそれをリサイクルしました。 しかし、あなたがしなければ黄色を得ます ページはあなたに届け、 あなたは、すべての本を得ることはありません 地球上に存在する電話番号、 右? あなたはのリストを取得 ローカル電話番号、 ものはあなたが呼び出すことが最も可能性が高いです。 そして、それは、DNSが何であるかを実際にです。 あなたはそれについて考える場合は、DNSがあります 本当に地元のイエローページ。 大きなDNSサーバ google.comsのように、彼ら 実際にはもっとあります 図書館のようなもの 地元の黄色のすべてのコピーを持っています ページまたはローカルDNSレコードのすべて。 だから、実際には1つのリポジトリがありません インターネットの完全なDNSの、 誰もありません同じように 世界のイエローページ。 すべてのこれらのローカル小があります そこに存在する規模のDNS。 そして、そのサービスがあります それらを一緒に集約します。 しかし、彼らはそれらに依存 小さいDNSシステム このように、それらの情報を更新します 彼らは、最も正確な情報を持っています。 だからもう一度、このアナロジー 大きな凝集あり DNSシステムは似ています コピーを持っているライブラリ 世界のあらゆるイエローページの。 彼らは、自分たちにはありません それらの本を更新します。 彼らは、入ってくるブックに依存 ので、彼らは情報を更新することができます 彼らはそれを必要とする場合。 だから、DNSシステムは、巨大なブロックではありません。 これは、全体の分散化です 多くの、多くのサーバー。 だから今、私たちはどこか知っ​​ています 私たちとインターネットの間に DNSサーバが存在します 同様に、DHCPサーバ。 今、アクセスポイント、 どのような私たちのアクセスポイント? まあ、アクセスポイントは、あなたはおそらくしています 実際のとはかなり精通して インターネットに接続しています。 それは、あなたが選択したネットワークです 自宅や職場のネットワーク または何を持っています。 そして、私は一般化してい アクセスポイントの概念 ここでは、このビデオの目的のために。 しかし、実際にそこにあります そのたくさんの アクセスポイントにロールアップすることができます。 ルータの概念がありますが、これは 我々が使用する一般的な用語の一種です。 しかし、またスイッチがあります そして、物事が実際に呼び出さ とは別のアクセスポイント このアクセ​​スの一般的な概念 ポイント。 しかし、基本的にはどのような たまたま私は、IPv4であります 私たちはこの概念を持っていると述べました プライベートアドレスの、右? そして、代わりにすべてのマシンの 固有のIPアドレスを有しています 我々はので、が不足しています 我々は、40億のデバイスにしています に接続しようとし 我々は何をすべきか、インターネット、 代わりに割り当てています ルータのIPアドレス。 そのルータまたはアクセスポイント ちょうど例えばあなたの家、インチ そしてについてのルータの仕事 ソートの交通警官として機能し、 接続したすべての人を許可します そのルータに同じIPを使用します 外に出て取り組みます。 それは理にかなっていますか? あなたの家でそう皆 プライベートIPアドレスを持っています。 彼らはに接続できません インターネット、またはむしろインターネット 彼らに話すことができません そのプライベートアドレス。 彼らは彼らに話すことができます ルータのアドレスを介し。 そして、それはルータのです 情報を取るために仕事 あなたは、ルータを送っていること し、正しい場所にそれを指示 そして、来るの情報について ルータのルータに あなたにそれを送信します。 だから、ルータが実際にあります デバイスhere--特にルータ あなたの家の、最も一般的なソート 最もpeople--の使用例 それは、パブリックIPアドレスを持っています。 それはだデバイスです インターネットに接続されています。 そして、あなたは、ルータに接続します 情報の流れを持っています それを通して、あなたに代わって。 私が言ったように、現代のホームネットワーク、 ルータ、スイッチ、アクセスポイント すべての種類のバンドルされています 単一のデバイスにアップ。 時にはモデムがあります 同様にそこにバンドルされています。 それは通常はルーターと呼ばれています。 しかし、それは本当にのすべてです 一緒にそれらの事。 大規模なビジネスネットワークまたは ワイドエリアネットワーク、WANのいわゆる、 実際にこれらのデバイスは別に保管してください。 彼らはスイッチがあります。 彼らは、ルータを持っています。 これらは、複数のアクセスポイントを有しています。 例えば、Aの 大学あなたは物事が表示されます それは、いわゆるルータのように見えます 取り付けられたすべてのキャンパスの周りにあります。 これらは流れ、すべてのアクセスポイントです エトセトラルータ、スイッチ、に、 情報に沿って渡すことができます。 これらのネットワークはそうなので 大きなその1単一のアクセスポイント その大きな領域をカバーすることはできません。 だから、これらの大規模なネットワーク、 ビジネスネットワーク、エトセトラ、 別々にこれらを分割 デバイスなので、ネットワークおよび規模 必要に応じて、成長。 だからもう一度、どこかで私たちとの間 インターネットは、我々は、アクセスポイントを持っています。 そして、それは私達がに接続するものです。 そして、そこを通じ、我々 インターネットに得ることができます。 私が言ったように このビデオの始まり、 これは、ネットワーク上のコースではありません。 だから、これは全体の話ではありません。 そして、私は種類のそれの上に練りました。 そして多分私はあなたを残してきました 少しでも混乱 これらの事のいくつかが何であるかのように。 しかし、それは大丈夫です。 私たちは、全体的な話をする必要はありません。 私たちは移動を知っていることは十分です 前方だけで、基本的には少し インターネットがどのように機能するかについて。 だから、私たちが知っている私たちはこれらを持っています 私たちの家でのプライベートネットワーク。 そして、我々は、ルータに接続します。 そして、そのルータが接続されています 大型でインターネットへ。 しかし、大規模でのインターネットは何ですか? 私はこれを言い続けるが、それは何ですか? まあ、それは実際には、これらすべてです 私の家では個々のネットワーク、 そしてあなたの家であり、他のすべてのでは 互いに接続されている家、。 これは、相互接続されます ネットワーク、インターネット。 だからではなく、思考の インターネットについて この巨大な雲のように、このエーテル そこに存在するもの、 それは実際には接続です これらのネットワークのすべての中。 だからここに私達は行きます。 私たちは、ローカルネットワークを持っています。 そして、我々は唯一の人じゃありません おそらく、私たちのローカルネットワーク上の インターネットを使用しようとしています。 いくつかは、おそらくあります 私たちの中に取得しようとしています。 そして、我々は唯一のネットワークじゃありません それは右、世界に存在しますか? 他のネットワークは、あまりにもありますが、その インターネットに接続しようとしています。 しかし、インターネットではなく、 再び、別のエンティティ。 これは、許可するルールのセットだけです これらのネットワークは、これらの小規模ネットワーク、 青、紫、 赤のネットワーク ここで、相互に通信します。 だから、何の事はありません それらはすべてに接続しています。 彼らはすべてちょうど接続しています お互いに、右? だからどこかにこれらの ネットワークサービスの存在 私たちは、実際にしたいこと。 ので、多分青ネットワーク内 Googleが住んでいる場所です。 そして紫色のネットワークで Facebookが住んでいる場所です。 そして、赤のネットワークでは、よく、多分 これらすべての猫がどこにあるというのです。 そして、私たちが取得したい場合 猫についての情報、 私たちはネットワークのこのチェーンを横断 私たちが望む情報を取得します。 そしてここで、私が表現しました など、すべてのネットワーク お互いに話をすることができます。 そして、我々は唯一のネットワークに話すことができます。 しかし、ネットワークは、私たちに話すことができません。 しかし、それは右、どちらか本当ではありませんか? これは、すべての双方向の通りです。 情報が流れることができます 前後にネットワーク。 それはどのようにそれを行うのですか? さて、インターネットは本当にです プロトコルのシステム。 そして、我々はするつもりです 何について話し始めます これらのプロトコルは、将来のビデオです。 しかし、再び、インターネット 独立したものではありません。 それは定義されて一連のルールです ネットワークがどのように通信しますか、 これらの小規模なネットワーク、これらの 私たちは慣れているローカルネットワーク、 私たちの家の人々、人々 私たちの学校で、私たちの仕事の人々、 すべてのネットワークを共有します。 そして、どのようにこれらのネットワークを相互接続 そして、お互いに話 それは実際には何 インターネットはすべてについてです。 だから将来的には、してみましょう ビデオ、いくつかの話を 構成プロトコルの うまくいけばインターネット あなたのもう少しを与えます バランスの取れた理解。 私はダグロイドです。 これはCS50です。