1 00:00:00,000 --> 00:00:04,580 2 00:00:04,580 --> 00:00:06,580 DOUG LLOYD: Hvis du har været at se disse videoer 3 00:00:06,580 --> 00:00:09,030 i den rækkefølge, som vi anbefaler, vi er ved at gennemgå 4 00:00:09,030 --> 00:00:10,260 lidt af en kultur skift. 5 00:00:10,260 --> 00:00:13,093 Fordi nu, vi kommer til at starte taler om internettet og web 6 00:00:13,093 --> 00:00:13,669 teknologier. 7 00:00:13,669 --> 00:00:15,835 Så indtil nu, vi har virkelig gjort en masse C. 8 00:00:15,835 --> 00:00:17,370 >> Og når vi har været kører vores programmer, 9 00:00:17,370 --> 00:00:19,500 vi har kørt dem fra kommandolinjen. 10 00:00:19,500 --> 00:00:23,080 Det er temmelig meget, hvordan brugerne har blevet interagere med programmerne 11 00:00:23,080 --> 00:00:23,760 at vi skriver. 12 00:00:23,760 --> 00:00:26,859 De pluk noget at bede, noget sker i terminalvinduet, 13 00:00:26,859 --> 00:00:27,650 og så det er gjort. 14 00:00:27,650 --> 00:00:30,957 >> Nogle gange har du måske vedholdende data, der er tilbage bagefter. 15 00:00:30,957 --> 00:00:32,040 Men det er temmelig meget det. 16 00:00:32,040 --> 00:00:33,081 Det er på kommandolinjen. 17 00:00:33,081 --> 00:00:34,775 Det er den eneste måde, at brugeren kan interagere. 18 00:00:34,775 --> 00:00:36,650 Fra dette punkt fremad, vi kommer til at starte 19 00:00:36,650 --> 00:00:39,980 som overgår så brugerne kan interagere med vores hjemmesider. 20 00:00:39,980 --> 00:00:42,688 Så vi kommer til at skrive hjemmesider, som ikke er skrevet i C, 21 00:00:42,688 --> 00:00:46,600 men er skrevet i en række andre programmeringssprog, herunder PHP, 22 00:00:46,600 --> 00:00:50,810 og det er slags helper sprog, HTML, CSS og lignende. 23 00:00:50,810 --> 00:00:53,130 Så vi kommer til at starte taler om disse ting. 24 00:00:53,130 --> 00:00:55,740 >> Før vi kommer ind web programmering selv, 25 00:00:55,740 --> 00:00:58,720 Jeg synes det er nok en god idé at tage et skridt tilbage og tale 26 00:00:58,720 --> 00:01:02,720 om, hvordan computere og mennesker interagerer via internettet. 27 00:01:02,720 --> 00:01:07,520 Så denne video er virkelig en primer, en grundlæggende vejledning, til internettet. 28 00:01:07,520 --> 00:01:10,951 Nu det forbehold her er CS50 er ikke et netværk klasse. 29 00:01:10,951 --> 00:01:13,700 Så det, vi kommer til at tale om her, er temmelig højt niveau. 30 00:01:13,700 --> 00:01:17,240 Vi kommer ikke til at komme ind i nogen lavt niveau 31 00:01:17,240 --> 00:01:19,540 detaljer om, hvordan alle disse ting fungerer. 32 00:01:19,540 --> 00:01:21,290 Hvis du er interesseret i det, jeg vil kraftigt 33 00:01:21,290 --> 00:01:24,580 anbefale at tage en klasse på computernetværk. 34 00:01:24,580 --> 00:01:26,540 Og vi kan måske endda fortælle hvid løgn eller to bare 35 00:01:26,540 --> 00:01:31,590 med henblik på at gøre generel forståelse klart. 36 00:01:31,590 --> 00:01:35,780 >> Så med det sagt, lad os tale om hvordan vi interagerer med internettet. 37 00:01:35,780 --> 00:01:37,570 Så her er vi. 38 00:01:37,570 --> 00:01:38,430 Her er os. 39 00:01:38,430 --> 00:01:41,096 Vi er temmelig ser frem til komme på internettet, som 40 00:01:41,096 --> 00:01:42,810 som vi alle ved, er propfyldt fuld af katte. 41 00:01:42,810 --> 00:01:45,210 >> Nu skal vi bare forbinde til internettet som denne? 42 00:01:45,210 --> 00:01:46,360 Nå, nok ikke. 43 00:01:46,360 --> 00:01:48,620 Intuitivt, du ved at, siger for eksempel, 44 00:01:48,620 --> 00:01:51,190 når du ændrer din Wi-Fi netværke på din computer, 45 00:01:51,190 --> 00:01:54,010 du ikke kan se en kaldet internet medmindre der bare så sker 46 00:01:54,010 --> 00:01:58,870 at være navnet på din lokale Wi-Fi. 47 00:01:58,870 --> 00:01:59,370 Højre? 48 00:01:59,370 --> 00:02:00,880 >> Det er normalt noget lignende hjem. 49 00:02:00,880 --> 00:02:03,338 Eller hvis du er på arbejde, er det måske være navnet på din virksomhed. 50 00:02:03,338 --> 00:02:05,340 Der er ikke kun én valgmulighed kaldet internettet. 51 00:02:05,340 --> 00:02:09,710 Og så noget eller nogle tingene eksisterer mellem når 52 00:02:09,710 --> 00:02:11,490 vi ønsker at oprette forbindelse til internettet. 53 00:02:11,490 --> 00:02:12,740 Hvad er nogle af de ting? 54 00:02:12,740 --> 00:02:14,110 Nå, vi kommer til at tale om det. 55 00:02:14,110 --> 00:02:16,180 Vi er også vil tale om nogle af de vigtige ting 56 00:02:16,180 --> 00:02:18,710 vi har brug for at være i stand til at forbinde til internettet. 57 00:02:18,710 --> 00:02:21,214 Og den første af disse ting er en IP-adresse. 58 00:02:21,214 --> 00:02:23,380 Så du har sikkert hørt udtrykket IP-adresse før. 59 00:02:23,380 --> 00:02:24,630 Hvad betyder det? 60 00:02:24,630 --> 00:02:28,270 Tja, en IP-adresse er dybest set en entydig identifikator 61 00:02:28,270 --> 00:02:30,820 af din computer på et netværk. 62 00:02:30,820 --> 00:02:33,640 Ligesom ethvert hjem eller kontor har en unik adresse 63 00:02:33,640 --> 00:02:36,660 som man kunne sende en mail. 64 00:02:36,660 --> 00:02:40,750 >> Tilsvarende hver computer, hvis det ønsker at modtage data eller sende data, 65 00:02:40,750 --> 00:02:43,040 skal have en unik adresse. 66 00:02:43,040 --> 00:02:45,720 Så når oplysningerne er sendt eller modtaget, 67 00:02:45,720 --> 00:02:49,720 det bliver sendt fra eller modtaget til den korrekte placering. 68 00:02:49,720 --> 00:02:52,660 Denne adressering ordning, som jeg sagde, kaldes IP-adressering. 69 00:02:52,660 --> 00:02:57,690 IP er står for Internet Protocol, som vi vil tale om igen om kort tid. 70 00:02:57,690 --> 00:03:00,230 >> Nu, hvad betyder IP-adressering ud? 71 00:03:00,230 --> 00:03:04,330 Nå, at ordningen var dybest set, da den først blev gennemført, 72 00:03:04,330 --> 00:03:07,846 at give hver computer en unik 32-bit adresse. 73 00:03:07,846 --> 00:03:08,720 Det er en masse bits. 74 00:03:08,720 --> 00:03:10,900 Det er 4 milliarder adresser. 75 00:03:10,900 --> 00:03:14,190 >> Og generelt stedet for at anvende hexadecimal notation, der 76 00:03:14,190 --> 00:03:18,450 vi har brugt tidligere i forbindelse med pejlemærker i C for at tale om adresser, 77 00:03:18,450 --> 00:03:21,580 vi normalt repræsenterer IP adresser i lidt mere 78 00:03:21,580 --> 00:03:24,370 af en human venlige måde, der repræsenterer dem 79 00:03:24,370 --> 00:03:28,680 som fire klynger af 8 bit repræsenteret som decimaltal. 80 00:03:28,680 --> 00:03:34,920 Fordi mennesker ikke taler ofte hexadecimal, medmindre du programmere. 81 00:03:34,920 --> 00:03:38,400 Men folk, der bruger internettet er ikke nødvendigvis programmører. 82 00:03:38,400 --> 00:03:41,660 >> Og så gør det let og tilgængelige for dem 83 00:03:41,660 --> 00:03:45,430 at være i stand til at tale om, hvad deres IP-adresse er i tilfælde af de måske 84 00:03:45,430 --> 00:03:47,690 brug for at ringe op nogen at fejlfinde noget, 85 00:03:47,690 --> 00:03:51,610 det er bedre at gøre det i de mere fælles konventionelle decimaltal 86 00:03:51,610 --> 00:03:52,880 format. 87 00:03:52,880 --> 00:03:57,570 Og så en IP-adresse bare ser temmelig meget som dette, w.x.y.z, 88 00:03:57,570 --> 00:04:00,650 hvor hver enkelt af disse breve repræsenterer en ikke-negativ værdi 89 00:04:00,650 --> 00:04:02,960 i området fra 0 til 255. 90 00:04:02,960 --> 00:04:07,950 Erindre, at et 8-bit tal kan indeholde 256 forskellige værdier. 91 00:04:07,950 --> 00:04:10,520 >> Og så derfor vores sortiment er 0 til 255. 92 00:04:10,520 --> 00:04:15,030 Og vi har fire klynger af 8 bits til en grand alt 32 bit. 93 00:04:15,030 --> 00:04:17,920 Og så en IP-adresse måske se noget som dette. 94 00:04:17,920 --> 00:04:24,120 Det er sortering af en generisk standard-IP-adresse, 123.45.67.89. 95 00:04:24,120 --> 00:04:28,850 Alle af dem er i området fra 0 til 255, så det er en gyldig IP-adresse. 96 00:04:28,850 --> 00:04:34,040 >> Her på Harvard University, som alle vores IP adresser starter med 140,247. 97 00:04:34,040 --> 00:04:37,130 Det er bare den måde, at IP adresser i dette geografiske område 98 00:04:37,130 --> 00:04:38,130 har fået tildelt. 99 00:04:38,130 --> 00:04:42,750 Og så dette kunne være en IP-adresse der kunne eksistere her på Harvard. 100 00:04:42,750 --> 00:04:46,810 >> Så som jeg sagde, hvis hver IP-adresse er 32 bit, har vi omkring 4 milliarder 101 00:04:46,810 --> 00:04:49,290 at give ud, lidt mere end 4 mia. 102 00:04:49,290 --> 00:04:51,470 Men vi kan slags se et problem, ikke? 103 00:04:51,470 --> 00:04:53,190 Hvad er verdens befolkning lige nu? 104 00:04:53,190 --> 00:04:56,560 >> Tja, det er et sted nord for 7 milliarder mennesker. 105 00:04:56,560 --> 00:04:58,800 Og i den vestlige verden I det mindste de fleste mennesker 106 00:04:58,800 --> 00:05:02,644 har mere end én enhed stand til internet-forbindelse. 107 00:05:02,644 --> 00:05:03,560 Jeg har en lige her. 108 00:05:03,560 --> 00:05:04,880 Og jeg har en anden i min lomme. 109 00:05:04,880 --> 00:05:06,340 Og jeg har en tilbage på mit kontor. 110 00:05:06,340 --> 00:05:07,387 >> Og så det er tre. 111 00:05:07,387 --> 00:05:09,970 Og det er ikke engang tælle dem, jeg har derhjemme, også. 112 00:05:09,970 --> 00:05:12,160 Og så er sådan et problem, ikke? 113 00:05:12,160 --> 00:05:15,380 Vi har mindst 7 milliarder mennesker og kun 4 milliarder adresser. 114 00:05:15,380 --> 00:05:18,719 >> Og hver enhed er meningen kan identificeres entydigt. 115 00:05:18,719 --> 00:05:21,260 Vi har udviklet nogle løsninger at behandle dette problem, 116 00:05:21,260 --> 00:05:23,240 noget, der hedder en privat IP-adresse, som vi ikke 117 00:05:23,240 --> 00:05:24,573 kommer til at komme ind i denne video. 118 00:05:24,573 --> 00:05:31,920 Men dybest set, det giver fremme web, internettet, at slags falske 119 00:05:31,920 --> 00:05:35,610 ud en lille smule, at du har en unik adresse ved at have private adresser 120 00:05:35,610 --> 00:05:38,730 og derefter kanalisere dem gennem en enkelt adresse, hvor 121 00:05:38,730 --> 00:05:41,220 deles af mange forskellige computere. 122 00:05:41,220 --> 00:05:43,200 >> Men det er virkelig ikke en langsigtet løsning. 123 00:05:43,200 --> 00:05:45,250 Selv dette faste ikke kommer til at vare evigt. 124 00:05:45,250 --> 00:05:50,030 Og så er vi nødt til at have en anden måde at håndtere dette. 125 00:05:50,030 --> 00:05:51,904 >> Så som jeg sagde, havde vi omkring 4 mia. 126 00:05:51,904 --> 00:05:53,820 Men det kommer ikke til at være god nok, ikke? 127 00:05:53,820 --> 00:05:56,540 Og så den måde, at det har besluttet der er vi 128 00:05:56,540 --> 00:05:59,240 kommer til at beskæftige sig med dette er på en længere IP-adresser. 129 00:05:59,240 --> 00:06:03,344 I stedet for 32-bit-adresser, vi er nødt til 128-bit adresser. 130 00:06:03,344 --> 00:06:05,260 Så i stedet for 4 milliarder adresser, vi kommer 131 00:06:05,260 --> 00:06:11,130 at have den enorme antal adresser, hvilket er 340 milliarder milliarder milliarder 132 00:06:11,130 --> 00:06:14,150 milliarder, så en masse af IP-adresser. 133 00:06:14,150 --> 00:06:18,240 >> Og denne nye ordning hedder IPv6 er almindeligt hvordan det er nævnt. 134 00:06:18,240 --> 00:06:21,242 Den gamle ordning bliver IPv4. 135 00:06:21,242 --> 00:06:23,450 Det er lidt af et problem i at dette problem har været 136 00:06:23,450 --> 00:06:25,470 kendt om for en virkelig lang tid. 137 00:06:25,470 --> 00:06:28,025 138 00:06:28,025 --> 00:06:32,201 >> Og du vil se det meget i forbindelse med computere og computing. 139 00:06:32,201 --> 00:06:33,700 Vi er gode til at foregribe problemer. 140 00:06:33,700 --> 00:06:36,449 Men vi er dårlige til at håndtere dem selv om vi ved om dem. 141 00:06:36,449 --> 00:06:38,340 Så IPv6 har eksisteret i et stykke tid. 142 00:06:38,340 --> 00:06:40,510 Og kun i de sidste par år har vi faktisk 143 00:06:40,510 --> 00:06:47,190 begyndte indfasning disse IPv6-adresser at udfase IPv4-adresser. 144 00:06:47,190 --> 00:06:49,520 Men nogle steder har dem. 145 00:06:49,520 --> 00:06:52,200 Og de ser ens til en almindelig IP-adresse. 146 00:06:52,200 --> 00:06:53,520 Men de er meget længere. 147 00:06:53,520 --> 00:06:59,900 >> Så i stedet for nu har fire klynger af 8 bytes til din adresse, 148 00:06:59,900 --> 00:07:03,580 vi nu har otte klynger af 16 bytes. 149 00:07:03,580 --> 00:07:06,680 Og 8 gange 16 er 128. 150 00:07:06,680 --> 00:07:11,210 Og vi repræsenterer disse i mindre konventionelle hexadecimal form. 151 00:07:11,210 --> 00:07:16,930 Fordi der 16-bit tal betyder, at stedet for at være et område fra 0 til 255, 152 00:07:16,930 --> 00:07:20,350 Vi ville have en række 0 til 65.535. 153 00:07:20,350 --> 00:07:22,470 >> Og så har en flok af disse hænger sammen 154 00:07:22,470 --> 00:07:24,680 ville være meget vanskelig at læse. 155 00:07:24,680 --> 00:07:27,480 Og så vi normalt bruger hex lige ud af bekvemmelighed. 156 00:07:27,480 --> 00:07:31,180 Og så en typisk IPv6-adresse kunne se noget som dette. 157 00:07:31,180 --> 00:07:35,860 >> Det er helt sikkert en del længere tid end IPv4-adressen, vi har set før. 158 00:07:35,860 --> 00:07:39,280 Men dette ville være en gyldig IPv6-adresse. 159 00:07:39,280 --> 00:07:41,570 Denne ene handler også om IPv6-adresse. 160 00:07:41,570 --> 00:07:44,331 >> Denne ene sker for at tilhøre Google. 161 00:07:44,331 --> 00:07:46,080 Og varsel der er en bundt af nuller der. 162 00:07:46,080 --> 00:07:47,930 Undertiden disse adresser kan få så længe. 163 00:07:47,930 --> 00:07:50,530 Og da vi er stadig temmelig tidligt i IPv6, 164 00:07:50,530 --> 00:07:54,250 nogle gange kan der være store bidder af nuller i der, at vi ikke har brug for. 165 00:07:54,250 --> 00:08:01,920 >> Hvis du læser dette højt, det er 2001.4860.4860.0.0.0.0.8844. 166 00:08:01,920 --> 00:08:03,325 Det er lidt af et parti, ikke? 167 00:08:03,325 --> 00:08:05,450 Så hvis du ser en flok nuller, kan du nogle gange 168 00:08:05,450 --> 00:08:08,990 se en IPv6-adresse som denne, hvor de udelade nuller 169 00:08:08,990 --> 00:08:10,959 og bruge en dobbelt kolon i stedet. 170 00:08:10,959 --> 00:08:11,750 Det er OK, selv om. 171 00:08:11,750 --> 00:08:14,610 Fordi vi ved, at der er formodes at være otte forskellige bidder. 172 00:08:14,610 --> 00:08:17,190 Og så indirekte, ser vi fire. 173 00:08:17,190 --> 00:08:20,620 Så vi ved, at der skal være fire sæt af nuller som denne, der udfylder det i. 174 00:08:20,620 --> 00:08:23,760 >> Så nogle gange, kan du se en IPv6-adresse, der ikke har 175 00:08:23,760 --> 00:08:26,650 otte adskilte bidder som vi gør her. 176 00:08:26,650 --> 00:08:28,760 Du kan se det ser sådan ud. 177 00:08:28,760 --> 00:08:31,310 Og det betyder bare, at alt det, du ikke kan se i 178 00:08:31,310 --> 00:08:37,450 mellem hvor at dobbelt kolon er bare nul adskilt. 179 00:08:37,450 --> 00:08:37,998 >> Så ok. 180 00:08:37,998 --> 00:08:40,039 Vi ved lidt mere om IP-adresser nu. 181 00:08:40,039 --> 00:08:41,250 Men hvordan får vi dem? 182 00:08:41,250 --> 00:08:44,727 Vi kan ikke bare vælge den, vi ønsker. 183 00:08:44,727 --> 00:08:47,810 Hvis vi gjorde det, ville vi ender kampene nogen for den samme IP-adresse. 184 00:08:47,810 --> 00:08:50,050 Eller nogen har måske valgt det tidligere. 185 00:08:50,050 --> 00:08:52,799 Hvis vi prøver og tage det, vi skal at løbe ind i lidt af et problem. 186 00:08:52,799 --> 00:08:56,300 Og så vi kan ikke bare vælge IP-adresse, som vi ønsker. 187 00:08:56,300 --> 00:08:58,410 >> Så den måde, at vi får en IP-adressen er et sted 188 00:08:58,410 --> 00:09:02,960 mellem vores computer og internet, det store internet derude, 189 00:09:02,960 --> 00:09:07,500 der er noget, der hedder en DHCP-server, en Dynamic Host Configuration Protocol 190 00:09:07,500 --> 00:09:08,630 server. 191 00:09:08,630 --> 00:09:09,960 Det er en stor mundfuld af tekst. 192 00:09:09,960 --> 00:09:12,670 Men virkelig alt det gør, er det tildeler dig en IP-adresse. 193 00:09:12,670 --> 00:09:16,960 >> Din DHCP-server har en liste over adresser, at det gyldigt kan tildele. 194 00:09:16,960 --> 00:09:18,160 Og det giver dig en. 195 00:09:18,160 --> 00:09:19,743 Det er temmelig meget alt der er til det. 196 00:09:19,743 --> 00:09:23,810 Nu, før DHCP, denne opgave tildele adresser 197 00:09:23,810 --> 00:09:25,106 faldt til en systemadministrator. 198 00:09:25,106 --> 00:09:27,730 Så en faktisk person ville have til manuelt at tildele din computer 199 00:09:27,730 --> 00:09:30,670 og adresse, når du forbundet til et netværk. 200 00:09:30,670 --> 00:09:34,307 Så DHCP bare slags automatiserer dette proces med at give dig en IP-adresse. 201 00:09:34,307 --> 00:09:35,390 Men det er, hvordan du får det. 202 00:09:35,390 --> 00:09:37,431 Det er bare et program kørende et sted mellem dig 203 00:09:37,431 --> 00:09:40,920 og internettet, der har en bank af IP-adresser, at det kan give ud. 204 00:09:40,920 --> 00:09:43,170 Og når du opretter forbindelse til netværk, det giver dig en. 205 00:09:43,170 --> 00:09:44,660 Så lad os revidere dette diagram. 206 00:09:44,660 --> 00:09:49,660 Et eller andet sted mellem dig og internettet, der er en DHCP-server. 207 00:09:49,660 --> 00:09:50,160 OK. 208 00:09:50,160 --> 00:09:51,500 Så det er godt. 209 00:09:51,500 --> 00:09:53,537 Nu, lad os tale om DNS. 210 00:09:53,537 --> 00:09:55,370 Så vi har talt, selv om disse IP-adresser. 211 00:09:55,370 --> 00:09:57,840 Og vi ved, at hvis vi er kommer til entydigt at identificere 212 00:09:57,840 --> 00:10:01,740 en enhed på internettet, er det skal have en unik adresse. 213 00:10:01,740 --> 00:10:04,150 >> Og vi kunne besøge det tage fat, hvis vi ønskede at. 214 00:10:04,150 --> 00:10:09,600 Men du har sikkert aldrig har skrevet i noget som 192.168.1.0 215 00:10:09,600 --> 00:10:11,490 i din browser, ikke? 216 00:10:11,490 --> 00:10:13,980 Du behøver ikke skrive i tal i din browser. 217 00:10:13,980 --> 00:10:19,410 Du normalt skriver i menneskeligt læsbare navne ligesom google.com eller cs50.harvard.edu, 218 00:10:19,410 --> 00:10:20,640 højre? 219 00:10:20,640 --> 00:10:22,880 >> De er ikke IP-adresser, selv om. 220 00:10:22,880 --> 00:10:27,320 Så eksisterer denne service kaldet Domain Name 221 00:10:27,320 --> 00:10:33,990 System, DNS, der oversætter IP adresser til human forståelige ord 222 00:10:33,990 --> 00:10:37,690 eller sætninger, der er langt mere mindeværdige end at huske et sæt af fire tal 223 00:10:37,690 --> 00:10:40,430 eller, hurtigt, et sæt på otte hexadecimale tal. 224 00:10:40,430 --> 00:10:42,400 Det ville være virkelig udfordrende, ikke? 225 00:10:42,400 --> 00:10:45,560 >> Tænk over før dage af mobiltelefoner. 226 00:10:45,560 --> 00:10:47,730 Du havde din Lagring af dine vens telefonnumre. 227 00:10:47,730 --> 00:10:49,230 Det kunne have fået hård efter et lille stykke tid. 228 00:10:49,230 --> 00:10:51,190 Og på samme måde, hvis du vil at besøge en masse hjemmesider, 229 00:10:51,190 --> 00:10:53,570 du sandsynligvis ikke ønsker at huske en masse numre. 230 00:10:53,570 --> 00:10:56,640 Du hellere huske en masse ord. 231 00:10:56,640 --> 00:11:01,930 >> Så denne kortlægning Dette oversætte, af sæt tal til læsbar navne 232 00:11:01,930 --> 00:11:04,520 slags gør DNS den gule sider af internettet. 233 00:11:04,520 --> 00:11:06,270 Og du kan tænke på det, som om det er bare 234 00:11:06,270 --> 00:11:14,305 en enorm liste løber fra 0.0.0.0 alle vejen ned til 255.255.255.255, der 235 00:11:14,305 --> 00:11:21,490 ville være den højeste possible--, der er hele spektret fra 0s til 255s af alle 4 236 00:11:21,490 --> 00:11:25,525 milliarder-ish IPv4-adresser. 237 00:11:25,525 --> 00:11:27,400 Jeg gjort op dem på toppen og bunden. 238 00:11:27,400 --> 00:11:30,500 Men den ene i midten er der er faktisk en IP-adresse. 239 00:11:30,500 --> 00:11:38,440 Så hvis vi besøgte 74.125.202.138, tilsyneladende der oversætter til dette websted 240 00:11:38,440 --> 00:11:40,490 der, io-- hvad dælen er det? 241 00:11:40,490 --> 00:11:46,290 Nå, ikke alle navne, der kortlægger er faktisk klart, hvad det er, ikke? 242 00:11:46,290 --> 00:11:48,920 >> Så nogle gange nogen der ejer en IP-adresse 243 00:11:48,920 --> 00:11:52,090 kunne navngive deres vært noget at de er faktisk ikke. 244 00:11:52,090 --> 00:11:55,442 For eksempel, at IP-adresse, hvis du gik der, er faktisk bare google.com. 245 00:11:55,442 --> 00:11:57,540 Men Google har en masse forskellige servere. 246 00:11:57,540 --> 00:11:59,322 >> Og de kan ikke kalde dem alle google.com. 247 00:11:59,322 --> 00:12:03,530 Så de har deres egne internt system til at oversætte 248 00:12:03,530 --> 00:12:09,125 google.com til uanset server faktisk der er tilsluttet samme IP-adresse. 249 00:12:09,125 --> 00:12:11,250 Og så er der en anden system, der eksisterer mellem 250 00:12:11,250 --> 00:12:15,120 at oversætte det volapyk her til google.com. 251 00:12:15,120 --> 00:12:16,830 Men vi vil ikke komme ind i denne. 252 00:12:16,830 --> 00:12:18,920 >> Og tilsvarende for IPv6s, vi også vil 253 00:12:18,920 --> 00:12:22,089 at have en gule sider der vil være meget større. 254 00:12:22,089 --> 00:12:23,880 Og tilsvarende, i midten there-- det var 255 00:12:23,880 --> 00:12:26,496 svært at finde en IPv6 adresse, som var legitim. 256 00:12:26,496 --> 00:12:27,620 Men jeg fandt en til Google. 257 00:12:27,620 --> 00:12:30,460 >> Men det er Googles irske hjemmeside. 258 00:12:30,460 --> 00:12:34,170 Men hvis du gik til, at IPv6-adresse, Hvis din browser var IPv6-stand, 259 00:12:34,170 --> 00:12:36,940 der ville bringe dig til Googles irske hjemmeside. 260 00:12:36,940 --> 00:12:39,460 Så der du går. 261 00:12:39,460 --> 00:12:41,830 >> Men det er ikke helt rigtigt, ikke? 262 00:12:41,830 --> 00:12:43,710 Dette system virker besværligt, ikke? 263 00:12:43,710 --> 00:12:47,220 Hvis der er en enorm liste over 4 milliard ting at have til at se op, 264 00:12:47,220 --> 00:12:48,270 der er temmelig stor. 265 00:12:48,270 --> 00:12:52,634 Der er ingen gule sider af verden, ikke? 266 00:12:52,634 --> 00:12:54,800 Hvis du stadig får den gule sider leveret til du-- 267 00:12:54,800 --> 00:12:56,841 Jeg fik min den anden dag, og jeg bare genbrugt det. 268 00:12:56,841 --> 00:12:59,070 Men hvis du får det gule sider, der leveres til dig, 269 00:12:59,070 --> 00:13:02,120 du får ikke en bog, der er hver telefonnummer, der eksisterer på planeten, 270 00:13:02,120 --> 00:13:02,620 højre? 271 00:13:02,620 --> 00:13:05,500 Du får en liste over de lokale telefonnumre, 272 00:13:05,500 --> 00:13:07,670 dem, du er mest tilbøjelige til at kalde. 273 00:13:07,670 --> 00:13:09,400 >> Og det er faktisk, hvad DNS er. 274 00:13:09,400 --> 00:13:12,860 Hvis du tænker over det, DNS er virkelig de lokale gule sider. 275 00:13:12,860 --> 00:13:17,350 Og store DNS-servere Ligesom google.coms, de 276 00:13:17,350 --> 00:13:19,180 faktisk bare mere som biblioteker, 277 00:13:19,180 --> 00:13:25,470 har en kopi af alle de lokale gule sider eller alle de lokale DNS-poster. 278 00:13:25,470 --> 00:13:29,520 Så der er virkelig ingen repository af den fulde DNS af internettet, 279 00:13:29,520 --> 00:13:32,410 ligesom der er ingen gule sider i verden. 280 00:13:32,410 --> 00:13:36,450 >> Der er alle disse lokale små skala DNSs der findes derude. 281 00:13:36,450 --> 00:13:39,010 Og der er tjenester, som samle dem sammen. 282 00:13:39,010 --> 00:13:42,174 Men de er afhængige af dem, mindre DNS-systemer 283 00:13:42,174 --> 00:13:45,340 opdatere deres oplysninger, så de har de mest præcise oplysninger. 284 00:13:45,340 --> 00:13:48,500 >> Så igen, denne analogi er stort aggregerende 285 00:13:48,500 --> 00:13:51,910 DNS systemer er ligesom biblioteker, der har en kopi 286 00:13:51,910 --> 00:13:56,410 af hver gule sider i verden. 287 00:13:56,410 --> 00:13:58,350 De gør ikke selv opdatere disse bøger. 288 00:13:58,350 --> 00:14:01,620 De er afhængige af de bøger, der kommer ind, så de kan opdatere oplysningerne 289 00:14:01,620 --> 00:14:04,560 hvis de har brug for det. 290 00:14:04,560 --> 00:14:07,700 >> Så DNS-systemet ikke er en kæmpe blok. 291 00:14:07,700 --> 00:14:11,026 Det er decentraliseret på tværs mange, mange servere. 292 00:14:11,026 --> 00:14:13,400 Så nu ved vi, at et eller andet sted mellem os og internettet 293 00:14:13,400 --> 00:14:18,350 der findes en DNS server samt en DHCP-server. 294 00:14:18,350 --> 00:14:20,910 >> Nu adgangspunkter, hvad vores adgangspunkter? 295 00:14:20,910 --> 00:14:23,840 Nå, adgangspunkter du sandsynligvis temmelig kender fra faktisk 296 00:14:23,840 --> 00:14:24,964 at forbinde til internettet. 297 00:14:24,964 --> 00:14:28,820 Det er det netværk, du vælger, hjemmet eller dit arbejde netværk 298 00:14:28,820 --> 00:14:30,310 eller hvad har du. 299 00:14:30,310 --> 00:14:32,597 >> Og jeg generalisere den Begrebet et adgangspunkt 300 00:14:32,597 --> 00:14:33,930 her med henblik på denne video. 301 00:14:33,930 --> 00:14:35,721 Men der er faktisk en masse ting, som 302 00:14:35,721 --> 00:14:38,766 kan rulles op i adgangspunkter. 303 00:14:38,766 --> 00:14:41,890 Der er begreberne routere, som er sortering af en generel betegnelse, som vi bruger. 304 00:14:41,890 --> 00:14:45,940 >> Men der er også skifter og tingene faktisk kaldt 305 00:14:45,940 --> 00:14:49,070 adgangspunkter, der er adskilt fra denne generelle begrebet adgang 306 00:14:49,070 --> 00:14:49,780 punkt. 307 00:14:49,780 --> 00:14:54,510 Men dybest set, hvad sker, er med IPv4, jeg 308 00:14:54,510 --> 00:14:57,030 sagde vi har dette koncept af private adresser, ikke? 309 00:14:57,030 --> 00:15:03,680 Og i stedet for hver maskine have en unik IP-adresse, som 310 00:15:03,680 --> 00:15:07,720 Vi er løbet tør for, fordi vi er over 4 milliarder enheder 311 00:15:07,720 --> 00:15:09,860 forsøger at forbinde til internettet, hvad vi gør 312 00:15:09,860 --> 00:15:12,810 i stedet tildele en IP-adresse til en router. 313 00:15:12,810 --> 00:15:15,960 At router eller et adgangspunkt bare i dit hjem, for eksempel. 314 00:15:15,960 --> 00:15:19,280 >> Og routerens job som til slags fungere som en trafik cop, 315 00:15:19,280 --> 00:15:23,540 tillader alle, der er tilsluttet denne router til at bruge den samme IP 316 00:15:23,540 --> 00:15:25,115 tage fat for at komme ud. 317 00:15:25,115 --> 00:15:25,990 Giver det mening? 318 00:15:25,990 --> 00:15:29,414 Så alle i dit hjem har en privat IP-adresse. 319 00:15:29,414 --> 00:15:31,830 De kan ikke oprette forbindelse til internettet, eller på internettet snarere 320 00:15:31,830 --> 00:15:34,870 kan ikke tale til dem, gennem at privat adresse. 321 00:15:34,870 --> 00:15:37,656 De kan kun tale til dem gennem adressen i routeren. 322 00:15:37,656 --> 00:15:39,530 Og det er routerens opgave at tage information 323 00:15:39,530 --> 00:15:42,900 at du sender routeren og rette den til det korrekte sted 324 00:15:42,900 --> 00:15:46,890 og information, der kommer i routeren for routeren 325 00:15:46,890 --> 00:15:48,860 til at sende den til dig. 326 00:15:48,860 --> 00:15:52,470 >> Så routere er virkelig enheder her-- især en router 327 00:15:52,470 --> 00:15:59,010 i dit hjem, er den mest almindelige form af brugen tilfældet for de fleste people-- 328 00:15:59,010 --> 00:16:00,870 der har den offentlige IP-adresse. 329 00:16:00,870 --> 00:16:03,910 Det er den enhed, der er forbundet til internettet. 330 00:16:03,910 --> 00:16:07,190 Og du opretter forbindelse til routeren at have informationsstrømmen 331 00:16:07,190 --> 00:16:09,910 gennem det på dine vegne. 332 00:16:09,910 --> 00:16:14,420 >> Som jeg sagde, et moderne hjem netværk, router og switch og access point 333 00:16:14,420 --> 00:16:16,420 er alle slags bundtet op i en enkelt enhed. 334 00:16:16,420 --> 00:16:19,240 Nogle gange kan en modem er bundtet derinde så godt. 335 00:16:19,240 --> 00:16:20,800 Det er normalt blot kaldes en router. 336 00:16:20,800 --> 00:16:23,210 Men det er virkelig alle disse ting sammen. 337 00:16:23,210 --> 00:16:27,870 >> Store skala virksomhedsnetværk eller såkaldte Wide Area Networks, WAN, 338 00:16:27,870 --> 00:16:29,570 faktisk holde disse enheder adskilt. 339 00:16:29,570 --> 00:16:30,470 De har en kontakt. 340 00:16:30,470 --> 00:16:31,550 De har routere. 341 00:16:31,550 --> 00:16:33,510 De har flere adgangspunkter. 342 00:16:33,510 --> 00:16:36,250 >> For eksempel ved en universitet du vil se tingene 343 00:16:36,250 --> 00:16:40,300 at ligne såkaldte routere monteret er alle omkring campus. 344 00:16:40,300 --> 00:16:44,120 Disse er alle adgangspunkter, der løber i routere, switches, et cetera, 345 00:16:44,120 --> 00:16:45,250 at passere oplysninger sammen. 346 00:16:45,250 --> 00:16:49,120 Fordi disse netværk er så store, at et enkelt adgangspunkt 347 00:16:49,120 --> 00:16:51,870 kan ikke dække den store område. 348 00:16:51,870 --> 00:16:54,990 >> Og så disse store netværk, virksomhedsnetværk, et cetera, 349 00:16:54,990 --> 00:16:57,710 opdele disse i separate enheder, så netværket og omfang 350 00:16:57,710 --> 00:16:59,780 og vokse, hvis nødvendigt. 351 00:16:59,780 --> 00:17:04,180 Så igen, et sted mellem os og internettet, har vi et adgangspunkt. 352 00:17:04,180 --> 00:17:05,430 Og det er hvad vi forbindelse til. 353 00:17:05,430 --> 00:17:08,992 Og gennem der, vi kan få til internettet. 354 00:17:08,992 --> 00:17:10,700 Som jeg sagde i begyndelsen af ​​denne video, 355 00:17:10,700 --> 00:17:12,540 dette er ikke et kursus i netværk. 356 00:17:12,540 --> 00:17:13,990 Så dette er ikke hele historien. 357 00:17:13,990 --> 00:17:15,109 Og jeg har slags tilsløret det. 358 00:17:15,109 --> 00:17:17,150 Og måske jeg har forladt dig selv en lille smule forvirret 359 00:17:17,150 --> 00:17:18,670 om, hvad nogle af disse ting er. 360 00:17:18,670 --> 00:17:19,329 Men det er OK. 361 00:17:19,329 --> 00:17:20,599 >> Vi har ikke brug for hele historien. 362 00:17:20,599 --> 00:17:25,250 Det er nok for os at vide bevægelse frem lige dybest set en lille smule 363 00:17:25,250 --> 00:17:27,450 om, hvordan internettet fungerer. 364 00:17:27,450 --> 00:17:30,670 Så det, vi ved er, at vi har disse private netværk på vores hus. 365 00:17:30,670 --> 00:17:32,880 >> Og vi opretter forbindelse til en router. 366 00:17:32,880 --> 00:17:36,674 Og at routeren er tilsluttet til internettet som helhed. 367 00:17:36,674 --> 00:17:38,090 Men hvad er internettet som helhed? 368 00:17:38,090 --> 00:17:39,930 Jeg bliver ved at sige dette, men hvad er det? 369 00:17:39,930 --> 00:17:43,610 >> Tja, det er egentlig bare alle disse individuelle netværk på mit hus, 370 00:17:43,610 --> 00:17:47,460 og på dit hus, og på alle andre Huset, der er forbundet med hinanden. 371 00:17:47,460 --> 00:17:52,030 Det er et sammenkoblet netværk, en inter-nettet. 372 00:17:52,030 --> 00:17:53,840 Så i stedet for at tænke om internettet 373 00:17:53,840 --> 00:17:59,080 som denne kæmpe sky, denne æteriske ting, der eksisterer derude, 374 00:17:59,080 --> 00:18:02,470 det er egentlig bare en forbindelse blandt alle disse net. 375 00:18:02,470 --> 00:18:03,500 >> Så her vi gå. 376 00:18:03,500 --> 00:18:04,752 Vi har vores lokale netværk. 377 00:18:04,752 --> 00:18:07,210 Og vi er ikke den eneste person sandsynligvis på vores lokale netværk 378 00:18:07,210 --> 00:18:08,335 forsøger at bruge internettet. 379 00:18:08,335 --> 00:18:10,940 Der er sikkert flere af os forsøger at komme ind. 380 00:18:10,940 --> 00:18:13,870 >> Og vi er ikke de eneste netværk der findes i verden, ikke? 381 00:18:13,870 --> 00:18:18,300 Der er andre netværk også, at forsøger at oprette forbindelse til internettet. 382 00:18:18,300 --> 00:18:21,400 Men internettet er ikke, igen, en separat enhed. 383 00:18:21,400 --> 00:18:25,592 >> Det er bare et sæt regler, der tillader disse netværk, disse små netværk, 384 00:18:25,592 --> 00:18:27,300 det blå, lilla, og den røde netværk 385 00:18:27,300 --> 00:18:28,980 her, at kommunikere med hinanden. 386 00:18:28,980 --> 00:18:31,230 Så der er ingen ting de er alle tilslutning til. 387 00:18:31,230 --> 00:18:35,010 De er alle bare tilsluttet til hinanden, ikke? 388 00:18:35,010 --> 00:18:37,710 >> Og så et sted på disse net findes tjenesterne 389 00:18:37,710 --> 00:18:39,095 at vi faktisk ønsker. 390 00:18:39,095 --> 00:18:41,220 Så måske i den blå netværk er, hvor Google bor. 391 00:18:41,220 --> 00:18:43,303 Og i den lilla netværk er, hvor Facebook bor. 392 00:18:43,303 --> 00:18:46,310 Og i den røde netværk, godt, måske det er her, alle disse katte er. 393 00:18:46,310 --> 00:18:49,440 >> Og så hvis vi ønsker at få information om katte, 394 00:18:49,440 --> 00:18:55,166 vi bare krydse denne kæde af netværk at få de oplysninger, vi ønsker. 395 00:18:55,166 --> 00:18:57,040 Og her har jeg repræsenteret netværket som alle 396 00:18:57,040 --> 00:18:58,414 at være i stand til at tale med hinanden. 397 00:18:58,414 --> 00:19:00,300 Og vi kan kun tale til netværket. 398 00:19:00,300 --> 00:19:01,910 Men netværket kan ikke tale tilbage til os. 399 00:19:01,910 --> 00:19:03,326 >> Men det er ikke rigtigt enten, ikke? 400 00:19:03,326 --> 00:19:04,610 Det er alt sammen en tovejs gade. 401 00:19:04,610 --> 00:19:07,860 Oplysninger kan flyde gennem netværk frem og tilbage. 402 00:19:07,860 --> 00:19:09,007 >> Hvordan gør den det? 403 00:19:09,007 --> 00:19:11,090 Nå, internettet er virkelig et system af protokoller. 404 00:19:11,090 --> 00:19:11,970 Og vi kommer til at begynde at tale om, hvad 405 00:19:11,970 --> 00:19:14,130 disse protokoller er i fremtidige videoer. 406 00:19:14,130 --> 00:19:16,940 >> Men igen, internettet er ikke en separat ting. 407 00:19:16,940 --> 00:19:20,760 Det er et sæt regler, der definerer hvordan netværk kommunikere, 408 00:19:20,760 --> 00:19:23,410 disse små netværk, disse lokale netværk, som vi er vant til, 409 00:19:23,410 --> 00:19:26,600 folk i vores hus, de mennesker på vores skole, folk på vores job, 410 00:19:26,600 --> 00:19:29,160 alle deler et netværk. 411 00:19:29,160 --> 00:19:31,900 Og hvordan disse netværk interconnect og tale med hinanden, 412 00:19:31,900 --> 00:19:34,160 det er, hvad det egentlig internet handler om. 413 00:19:34,160 --> 00:19:36,090 Så lad os, i en fremtidig video, tale om nogle 414 00:19:36,090 --> 00:19:38,940 af de protokoller, der omfatter internettet til forhåbentlig 415 00:19:38,940 --> 00:19:42,320 give dig lidt mere af en godt afrundet forståelse. 416 00:19:42,320 --> 00:19:43,320 Jeg er Doug Lloyd. 417 00:19:43,320 --> 00:19:45,260 Det er CS50. 418 00:19:45,260 --> 00:19:47,351