پورت 80 چيست؟
عبور از پورت 80 ( port 80 )
port 80 پورت 80 يکی از مهمترين پورتهاست. دنيای وب (صفحات اينترنتی) بر اساس همين پورت کار میکنه. توضيح اينکه وقتی به يه سايت وصل میشيم و صفحه وب را درخواست میکنيم، در واقع مرورگر اينترنتی به پورت ۸۰ اون کامپيوتر وصل میشه و اطلاعات رو میگيره (البته بعد از گرفتن اطلاعات اون رو تفسير میکنه و به صورت يه صفحه نشون میده – دقت کنيد که اطلاعات در واقع به صورت يک سری تگ HTML است ).
– با پورت 80 صحبت کنيم
حالا ما میخواهيم با پورت 80 يک کامپيوتر صحبت کنيم ولی به کمک telnet و nc.
اول بايد يه connection (اتصال) با پورت ۸۰ برقرار کنيم (مثلا برای سايت hotmail.com بايد بنويسم):
telnet www.hotmail.com 80nc -v www.hotmail.com 80
پس اول بايد يکی از دستورات بالا را استفاده کنيم. من هميشه توصيهام استفاده از nc بوده و خواهد بود.
حالا بايد شروع به صحبت با پورت ۸۰ کنيم. من فعلا دو تا جمله براتون میگم و بقيهاش بمونه واسه بعد. دقت کنيد که موقع کار با پورت ۸۰ با تلنت (نه nc) دستوراتی که ما مینويسيم، نمايش داده نمیشود ولی کار میکنه.
۱- اولين جمله اينه: GET / HTTP/1.0 و بعدش دوتا Enter
به فاصلهها دقت کنيد. دو طرف / ی که بعد از GET است، فاصله وجود دارد. اين جمله به پورت ۸۰ میگه که هرچی در header داره، نشون بده. و جواب میشنوم:
HTTP/1.0 302 Moved TemporarilyServer: Microsoft-IIS/5.0Date: Thu, 05 Dec 2002 12:02:51 GMTLocation: http://lc2.law5.hotmail.passport.com/cgi-bin/loginX-Cache: MISS from cache5.neda.net.irConnection: close
۲- دومين جمله اينه: GET / what/ever و بعدش دوتا Enter
به فاصلهها دقت کنيد. اين دستور باعث ميشه که هر چی داره، رو کنه.
البته توجه کنيد که ما مسير را مشخص نکرديم. اين حالت که بدون مسير است خيلی وقتها کار نمیکنه (مثل همين مثال !!)
گاهی پيش میآد که يک سری دستورات خاص را هميشه بايد پشت سرهم به يه پورت خاص بفرستيم و بخواهيم در وقت صرفهجويی کنيم. مثلا همين جمله GET / HTTP/1.0 و دو Enter پشت سرهم که هميشه استفاده میکنيم. در اين موارد میتوان اين دستورات را در يک فايل تايپ کرد (همراه با Enter ها که بايد موقع نوشتن حتما بزنيد) و بعد مثلا با نام ali.txt ذخيره کنيد و بعد يکی از دستورات زير را بنويسيم:
nc -v www.far30.com 80 < ali.txttype ali.txt | nc -v www.far30.com 80
که همان کارهای بالايی را انجام ميده.
– حالا ميخوام مسير رو مشخص کنم
مثلا فرض کنيد که ميخوام فايلي به اسم index.html را از مسير startup در سايتي به اسم www.site.com داونلود کنيم. اول يه nc ميکنيم به سايت. بعد مينويسيم:
GET /startup/index.html HTTP/1.0
بعد دو تا Enter ميزنيم.
اين مثال نشون ميده که چطوري مسير رو ميشه مشخص کرد. همين کار رو ميتونيم براي فايلهايي مثل فايلهاي گرافيکي و … انجام بديم و حتي ميتونيد اطلاعاتي که ميرسه رو در يک فايل ذخيره کنيد. براي اينکار مينويسيد:
nc -v www.site.com 80 > index.html
(اين کاري که کرديم با موردي که در بالا نوشتيم فرق ميکنه! در بالا دستورات GET رو تو يه فايل مينوشتيم و ميفرستاديم که اجرا بشه ولي الان داريم نتايجي که بر ميگرده رو در يک فايل ذخيره ميکنيم!) ميشه اين دوتا رو ترکيب کرد مثلا نوشت:
nc -v www.site.com 80 < dastoorat.txt > index.html
http يك پروتكل مي باشد كه با وضوح وسرعت لازم خود موجب هماهنگ شدن ابر رسانه هاي سيستمهاي اطلاع رساني با هم مي شود و پوشش دهنده حالات جزيي پروتكل هاي شيي گرا مي باشد .
در اينترنت ارتباطاتي كه روي مي دهد فرا تر از اتصالات TCP/IP مي باشد . اين ارتباطات باعث نمي شود كه بصورت ابزاري اين پروتكل در شبكه اينترنت يا شبكه هاي ديگر مسدود شوند .
ارتباط بين مشتري وخدمتگزار زماني كه از مدل مرجع TCP/IP استفاده مي كنيم برروي پورت 80 كه پورتي شناخته شده مي باشد مستقر و تاسیس مي گردد .
لايه ارتباط host2host است که خود شامل دو پروتکل است به نامهاي TCP و UDP می باشد برای انتقال می باشد .
پروتکل TCP قويتر و قابل اعتمادتر است و اصولا پروتکل مهمتري نسبت به UDP محسوب ميشود. اين پروتکل توانايي بازبيني بستههاو کنترل خطا را هم دارد.
پروتکل UDP براي کاهش overflow طراحي شده است و در خيلي از موارد وابسته به TCP است
شماره پورت 80 (Port number):
پورت 80، وقتي شما در شبکه اطلاعات رد و بدل مي کنيد اطلاعات از درگاههايي وارد و خارج ميشن که به اين درگاهها ميگن پورت . اين درگاهها فيزيکي نيستن و واسه TCP/IP تعريف شدن . براي TCP جمعاً 65535 تا پورت تعريف شده که پورت شماره صفر رزرو شده و از اون استفاده نميشه .
شماره پورت يه عدد 16 بيتيه که مشخص کننده يه درگاه اطلاعاته . در هدر TCP شماره پورت مبدا (يعني شماره پورتي که برنامه کاربردي بوسيله اون پورت اطلاعات را ميفرسته) و شماره پورت مقصد(يعني شماره پورتي که برنامه کاربرديه سيستم مقابل بوسيله اون پورت اطلاعات را ميگيره) وجود داره .