Forstå FTP Protocol


FTP protokollen

Vanligvis når en tenker på Internett, er det første som kommer til hjernen "surfing" fra en nettside til en annen. Å kunne gå fra nettside til en annen, og vise innholdet er faktisk grunnen til at Internett er så populær som den er i dag, og vokser seg større for hvert år. Hvis vi setter surfing til side da, bare hva vi har igjen i form av faktisk bruk skjer mens du er på Internett? Vel en av aktivitetene som foregår er nedlasting av datafiler, filmer, anti-virus oppdateringer og slikt. Hva disse handlingene har til felles er en protokoll, nemlig FTP-protokollen eller File Transfer Protocol.

Det bør bemerkes at FTP observerer også klient /servermodellen. I motsetning til HTTP skjønt, hvor det er en entydige vinner for nettlesere og webservere, kan ingen slike program gjøre det samme kravet som gjelder FTP. Det er et stort utvalg av FTP-klienter og servere der ute i dag. Det er verdt å merke seg at din versjon av Windows kommer med en innebygd FTP-klient.

FTP selv bruker TCP transportprotokollen utelukkende, eller med andre ord, aldri bruker den UDP for sine transportbehov. Vanligvis et program laget protokollen vil bruke det ene eller det andre. Ett unntak på det er DNS eller Domain Name System. FTP er også oddetall i det faktum at den bruker to porter for å utføre sin oppgave. Den bruker vanligvis port 20 for dataoverføring og port 21 for å lytte til kommandoer. Selv med data som overføres over porten 20 er ikke alltid tilfelle, som det kan også være en annen port i tillegg. Det er der den forvirrende delen for mange mennesker kommer inn i bildet. Det er to moduser til FTP, nemlig aktiv og passiv modus. Disse to modusene er initiert av FTP-klient, og deretter tatt til følge av FTP-serveren.

La oss gå dypere

Så hvor gjør aktiv og passiv FTP arbeid anyways? Vel det hele starter med FTP klient initiere en forbindelse med FTP-server på sin port 21. Port 21 er hvor serveren lytter etter kommandoer utstedt til det, og i sin tur, som det vil svare på. Så vi vil anta at TCP /IP håndtrykk er fullført, og som vanlig kunden har gjort alt dette på en flyktig port. På dette punktet klienten begynner å lytte på det flyktige port + 1, og sender PORT N + 1-kommandoen til serveren på sin port 21 dvs. hvis det flyktige porten i bruk av klienten er 1026, så det ville lytte på port 1027 . Når dette er gjort dataoverførings port (port 20) på FTP-serveren vil starte en tilkobling til FTP-klient flyktige porter pluss en, som angitt ovenfor. Dette er ganske mye hvordan en aktiv FTP-økt er utført av både klienten og serveren. Selv om kunden har en brannmur på plass, vil hele denne kommunikasjonsprosessen komme til en sliping stoppe. Klientene brannmur ville slippe det den anser for å være en uønsket kommunikasjon forsøk på det flyktige port pluss en port for dataoverføring. Måten FTP får rundt dette problemet på er å bruke passiv FTP.

La oss ta passiv tilnærming

Ved å bruke passiv modus FTP eller som det vises i ASCII innholdet i en pakke " PASV ", FTP var i stand til å pent omgå brannmuren problemet på klientsiden. Det ble gjort på følgende måte: FTP-klient, la oss si den innebygde FTP-klient som kommer med en win32 operativsystem, vil starte opp to tilkoblinger til FTP-serveren. Vi må huske på så vel at begge tilkoblingene som er initiert av klienten bruker flyktige porter seg selv, som det skal være. Ved å åpne to tilkoblinger, eller stikkontakter med FTP-serveren, er klienten i stand til å løse problemet med sin brannmur nekte tilgang til FTP-serveren initiere kontakt på en av kundens høye flyktige porter.

En av tilkoblingene åpnet av klienten vil kontakte FTP-server på port 21, og gi det PASV (passive) kommando, vice normal PORT-kommandoen når du bruker aktiv FTP. Nå hva som skjer er at FTP-serveren åpner en flyktig port og utsteder PORT-kommandoen til FTP-klient. Med denne i hånden klienten deretter starter en forbindelse tilbake til serveren port for dataoverføringen. Det er en ganske kjekk måte å forholde seg til de nevnte spørsmålet om aktiv FTP og klient brannmurer.

Enda flere detaljer

Mye som noen andre program laget protokoller, har FTP sitt eget sett med status- og feilkoder. Akkurat som HTTP, vil disse tallverdiene fortelle deg hva som skjer med en etablert økt. Også mye som HTTP status og feilkoder blir de brutt ned i fem grupper. Det er alltid lurt å ha en link til et utbrudd av disse i nærheten hvis du undersøker noen trafikkproblemer. Godt med det sagt, hva ville en artikkel om en protokoll være uten en pakke som viser den i aksjon! Uten videre la oss ta en titt på en av dem

Se, FTP pakke

14: 01:.! 25,561863 192.168.1.100.21 > 192.168.1.200.11191: P [tcp sum ok] 825: 884 (59) ack 367 vinne 65 169 (DF) (ttl 118, id 61059, len 99)
0x0000 4500 0063 ee83 4000 7606 c5e7 c0a8 0164 E .. c .. @. v .......
0x0010 c0a8 01c8 0015
2bb7 8941 E301 1dc0 b76c ...... + .. En ..... l
0x0020 5
018 fe91 7d81 0000 3135 3020 4f70 656e
P ...} ... 150.Open
0x0030 696e 6720 4249 4e41 5259 206d 6f64 6520
ing.BINARY.mode.
0x0040 6461 7461 2 063 6f6e 6e65 6374 696f 6e20
data.connection.
0x0050 666f 7220 4a72 412e 3139 3939 2e6a 7067
for.JrA .1999.jpg
0x0060 2e0d 0a
...

Så hva kan vi fange opp fra å se på pakken ovenfor? Vel, vi kan se at FTP-serveren er plassert på 192.168.1.100 på port 21, og kommer til å binær modus for å lette overføringen av et bilde til klienten ved 192.168.1.200 på sin port 11191. Hva annet kan vi trekke ut informasjon klok fra denne pakken? Hvis vi ser på ttl verdi som sett ovenfor vi med rimelighet kan si at FTP-serveren er en win32 operativsystem, som standard TTL verdier på win32 operativsystemer er 128, og det faktum at DF bit er satt ganske mye sel avtale som dette blir en win32. Ganske ryddig! Det er mye av informasjonen i en pakke som du kan se.

Konklusjon

Nå for en rask oppfriskning på hva protokollen begynner der! Vi vet at TCP header starter på bytes 0015 som understreket ovenfor, slik at vi kan slutte fra at IP header endte på byte 01c8 foregående bytes 0015. Også ettersom det ikke er noen TCP vil valg som gjenspeiles av verdien av fem (som understrekes i ovennevnte pakke) vi vet hvor TCP header slutter og FTP-data begynner. Så vi kan se fra de understrekede delene i ovennevnte pakke akkurat der vår FTP trafikk er. Vel på dette notatet vil jeg bryte opp denne artikkelen på FTP, og dersom du har noen spørsmål om dette kan du gjerne send meg en linje. Til neste gang! Anmeldelser