آموزش دستورات شبکه و بصورت کلی دستورات CMD را شما می توانید به خوبی در دوره آموزش نتورک پلاس آموزش ببینید . اما به عنوان یک شبکه کار که فقط به دنبال یادگیری چند دستور کاربردی شبکه است ، خواندن این مقاله را توصیه می کنم. به عنوان یک مدیر شبکه دستورات کاربردی زیادی وجود دارند که شما می توانید از محیط Command از دستورات استفاده کنید. در این مقاله ما ابتدا دستورات شبکه کاربردی را بصورت مفهومی برای شما معرفی می کنیم و کاربرد و نحوه عملکرد هر کدام را تشریح می کنیم ودر ادامه در قالب استفاده از مثال های کاربردی از دستورات شبکه برای تست ارتباطات و رفع مشکلات شبکه استفاده خواهیم کرد. لیست مهمترین دستوراتی که در این مقاله به شما آموزش خواهیم داد به شرح زیر است :
دستور Ping
دستور Ping یا Packet Internet Group از ساده ترین و کاربردی ترین ابزارهای خطایابی قابل دسترس TCP/IP است.این کامند برای تست اتصال یک دستگاه یا سیستم به سیستم های دیگر و تایید فعال بودن سیستم مقصد استفاده می شود.همچنین برای بررسی برقراری ارتباط با یک host در شبکه نیز از این کامند استفاده می شود.
آموزش دستورات شبکه | آموزش دستور Ping
زمانی که بین دو کامپیوتر مشکل برقراری اتصال وجود داشته باشد،استفاده از این کامند اولین قدم در پیدا کردن هرگونه خطا در این زمینه است.درواقع ping ساده ترین کامندی است که اگر (خدای نکرده ) یک کارشناس IT با آن آشنایی نداشته باشد،مدرکش زیر سوال میرود! حال اینکه ping به چه صورت کار می کند:ping از پروتکل ICMP یا Internet Control Message Protocol برای بررسی برقراری اتصال با یک host یا remote host استفاده می کند.
در واقع این کامند با ارسال درخواست (request ) به مقصد،منتظر پاسخ (reply) می ماند و دریافت پاسخ از مقصد به معنی وجود ارتباط می باشد. د رمواردی که در برقراری اتصال به اینترنت دچار مشکل هستیم باید مراحل زیر را با استفاده از دستور ping طی کنیم .طی کردن این موارد باعث می شود متوجه شویم گره کار در کدام قسمت است.
ابتدا برقراری اتصال سیستم خود را با شبکه از طریق ping 127.0.0.1 چک می کنیم.در صورتی که به درخواست ما (request ) پاسخ داده شود (reply ) پس مشکل از سیستم ما نمی باشد.
Ping IP Address of local host
Pinging 127.0.0.1 with 32 bytes of data:
Reply from 127.0.0.1: bytes=32 time<1ms TTL=64
Reply from 127.0.0.1: bytes=32 time<1ms TTL=64
Reply from 127.0.0.1: bytes=32 time<1ms TTL=64
Reply from 127.0.0.1: bytes=32 time<1ms TTL=64
Ping statistics for 127.0.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
سپس شبکه داخلی را تست می کنیم.برای این منظور یکی از کامپیوترهای دیگری که در شبکه محلی ما (local network) قرار دارد را ping می کنیم.
Ping IP Address of local network
Pinging 192.168.0.2 with 32 bytes of data:
Reply from 192.168.0.2: bytes=32 time<4ms TTL=64
Reply from 192.168.0.2: bytes=32 time<4ms TTL=64
Reply from 192.168.0.2: bytes=32 time<4ms TTL=64
Reply from 192.168.0.2: bytes=32 time<4ms TTL=64
Ping statistics for 192.168.0.2:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
اگر در مرحله ی قبل نیز مشکلی نداشتیم default gateway را ping می کنیم .اینکار را با کامند زیر انجام می دهیم.با این کامند اتصال default gateway را با اینترنت بررسی می کنیم .در صورتی که از این کامند پاسخی (reply ) گرفتیم پس در برقراری اتصال default gateway با اینترنت مشکلی نداریم.
Ping IP Address of default gateway
Pinging 192.168.0.1 with 32 bytes of data:
Reply from 192.168.0.1: bytes=32 time<4ms TTL=64
Reply from 192.168.0.1: bytes=32 time<4ms TTL=64
Reply from 192.168.0.1: bytes=32 time<4ms TTL=64
Reply from 192.168.0.1: bytes=32 time<4ms TTL=64
Ping statistics for 192.168.0.1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
در مرحله ی آخر برای بررسی برقراری ارتباط ، یک remote host (یا مثلا یک سایت مثل سایت yahoo.com ) را ping می کنیم تا برقراری ارتباط با روترهای در مسیر را چک کنیم.
Ping IP Address of remote host
Pinging tosinso.com [62.193.15.162] with 32 bytes of data:
Reply from 62.193.15.162: bytes=32 time=150ms TTL=116
Reply from 62.193.15.162: bytes=32 time=153ms TTL=116
Reply from 62.193.15.162: bytes=32 time=149ms TTL=116
Reply from 62.193.15.162: bytes=32 time=154ms TTL=116
Ping statistics for 62.193.15.162:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 406ms, Maximum = 457ms, Average = 423ms
در طی این چهار مرحله می توان قدم به قدم صحت برقراری ارتباط را در هر سطح چک کرد و بدین صورت مشکل شبکه را خطایابی کرد.دستور ping ،زیرمجموعه های ( switch ) زیادی دارد .با وارد کردن عبارت ping/? در command prompt ،کلیه ی زیرمجموعه ی این کامند را می توان مشاهده کرد. که در اینجا به چندتای آنها به طور مختصر اشاره می کنم:
a- : تبدیل آدرس IP به نام آن
f- : با نوشتن این عبارت ،از قطعه قطعه کردن بسته های ارسالی توسط روترها و getway ها ، جلوگیری می شود.
i- : تعیین مقدار یا ظرفیت داده های ارسالی در یک packet ،این مقدار به صورت پیش فرض 32 بایت است و حداکثر تا 65500 بایت می تواند ظرفیت داشته باشد.
n count - : تعیین تعداد درخواستهای ارسالی که به صورت پیش فرض 4 است.
آموزش دستورات شبکه | آموزش دستور HPing
HPing چیست؟
همانطور که گفتم دستور ping از پروتکل ICMP استفاده می کند،پس در مواردی که پورتهای این پروتکل در فایروال بسته باشد استفاده از این دستور امکانپذیر نمی باشد ! انواع دیگری از این دستور وجود دارد که قابلیت ها و انعطاف پذیری بیشتری در استفاده از این دستور را به ما می دهد مانند Hping و ورژن جدیدترش Hping2 . Hping2 بیشتر مورد استفاده قرار می گیرد چرا که در این کامند به جای استفاده از پروتکل ICMP ،از پروتکل TCP استفاده می شود.پس دیگر نگرانی در استفاده از این کامند وجود نخواهد داشت چرا که هر زمان که خواستید می توانید از این کامند استفاده کنید.
دستور Tracert
Tracert کامندی است که تنها برای انجام یک وظیفه ی اساسی طراحی شده است و آن نیز تعیین مسیری است که بسته های داده برای رسیدن به مقصد طی می کنند.این دستور با دستور ping متفاوت است.درواقع ping به شما می گوید که آدرسی که آن را ping کرده اید فعال یا run است یا خیر و برقراری ارتباط را بررسی می کند اما tracert تک تک روترهایی را که بسته های داده در مسیر با آن برخورد خواهند داشت را برای کاربر نشان می دهد. آموزش لینوکس ، آموزش دستورات شبکه | آموزش دستور Tracert
در واقع زمانی که بسته های داده به مقصد نمی رسند و یا زمان پاسخ دستور ping زمانی نامعقول و طولانی باشد از این دستور استفاده می کنیم.لازم به ذکر است که این کامند هم همانطور که پیشتر ذکر کردم، همانند کامند ping از پروتکل ICMP استفاده می کند. این کامند به شما کمک می کند تا تعداد شبکه ها یا هاب های بین شما و کامپیوتر مقصد را بدانید.برای درک بهتر کاربرد این دستور یک مثال میزنم:
فرض کنید که data packet ها یا همان بسته های داده از دفتر نمایندگی شرکتی در آبادان تا دفتر نمایندگی آن شرکت در تهران به طور معمول 13 هاب را طی می کنند اما یک روز کاربران از سرعت پایین شبکه شاکی می شوند،زمانی که شما از این دستور استفاده می کنید متوجه می شوید
که تعداد هاب ها به 20 عدد افزایش یافته است که این بدان معناست که بسته ها مسیر دیگری را برای رسیدن به مقصد طی می کنند و این ممکن است به این علت باشد که مسیری که بسته ها به صورت معمول طی می کرده اند down شده باشد و بسته های داده ی شما برای رسیدن به مقصد مجبورند مسیر دیگری را طی کنند.
درواقع در یک شرکت اگرهم شما برای داشتن یک شبکه ی خوب ، از تجهیزات خوب نیز استفاده کنید،اما به محض اینکه داده های شما وارد دنیای وسیع اینترنت شدند کسی نمی تواند تصمیم بگیرد که داده ها چه مسیری را برای رسیدن به مقصد طی کنند.به عبارتی پروسه ی مسیریابی یک پروسه ی پویا است اما با استفاده از این کامند می توانید متوجه شوید که مشکل در شبکه شما از کجا یا کدام روتر است.برای خطایابی مشکل به وجود آمده می توانید از این دستور بدین صورت استفاده کنید:
Tracert
یا
Tracert
همانطور که گفتم ، اگرچه این دستور نمی تواند علت رخ دادن مشکل را کشف کند اما میتواند نقطه ای را که مشکل در آنجا رخ داده است را پیدا کند،سپس دارندگان روترهای معیوب نسبت به برطرف کردن مشکل اقدام می کنند.استفاده از tracert ممکن است در ابتدا کمی گیج کننده باشد.
زمانی که یک hostname یا یک ipaddress را tracert می کنیم اطلاعات مربوط به هاب ها در 5 ستون نمایش داده می شود.در ستون اول ،تعداد هاب هایی که بسته ها رد می کنند را نشان می دهند.در 3 ستون بعدی ،مدت زمانی که رسیدن بسته ها به روتر ها را نشان می دهد و در ستون آخر لیست کامل domain name هر روتر نشان داده می شود.
سوئیچ های دستور Tracert
-d : این سوئیچ مانع از تبدیل IP ها به hostname ها می شود.بدون استفاده از این سوئیچ برنامه همچنان کار می کند منتها با تبدیل IP مربوط به هر هاب به hostname آن که این عمل سرعت انجام پروسه را پایین می آورد.
-h : با استفاده از این سوئیچ می توان حداکثر تعداد هاب های یک روتر را تعیین کرد.به صورت پیش فرض تعداد هاب هایی که بسته ها برای رسیدن به remote host رد می کنند 30 عدد می باشد.اما در برخی موارد که لازم است این تعداد محدود شوند می توان از این سوئیچ استفاده کرد.
-w : مدت زمانی را (براساس میلی ثانیه ) که طول می کشد تا یک برنامه منتظر پاسخ بماند را تعیین می کند. در مواقعی که مشکل پهنای باند داریم ، کم یا زیاد کردن این مدت زمان می تواند به ما کمک کند.
-j :بدن استفاده از این سوئیچ،بسته ها از مسیری که به صورت پیش فرض برایشان در نظر گرفته شده عیور می کنند.زمانی که از این سوئیچ استفاده می کنید،tarcert همان مسیری را که برایش تعریف شده دنبال می کند و به کامپیوتر شما برمیگردد.به این option که Loose Source Rooting Option می گویند و کامند آن به صورت زیر اجرا می شود.
< Tracert –j
در آخرtarcert ابزار سودمندی است که علت در دسترس نبودن یک remote host را مشخص می کند.این کامند در ویندوز استفاده می شود.کامند معادل آن در لینوکس tracerout می باشد.جدول سوئیچ های tracert را در زیر می توانید مشاهده کنید.
آموزش دستورات شبکه | آموزش دستور Tracert
دستور NSLookup
در این قسمت به معرفی و بررسی دستور NSlookup می پردازم. برای معرفی و بررسی عملکرد دستور NSLookup به عنوان یکی از دستورات کاربردی در شبکه ،لازم است با DNS و مفهوم آن به خوبی آشنا باشیم.از این رو در ابتدا به معرفی DNS یا Domain Name System می پردازم.
DNS یا Domain Name System چیست ؟
همانطور که می دانید کلیه آدرس ها در شبکه بر مبنای IP Address است ( که البته در قسمت قبل صحبت کردیم که پشت پرده یه اتفاق دیگه می افته و آدرس ها بر مبنای IP نیست ! ) یعنی برای وارد شدن به سایتی باید آدرس آن سایت یا به عبارتی IP مربوط به آن سایت را بدانیم
اما آیا واقعا ما IP مربوط به همه ی سایت هایی را که مرتب به آنها مراجعه می کنیم را حفظ هستیم؟مثلا شما هر روز از سایت گوگل استفاده می کنید اما هر بار برای وارد شدن به گوگل به جای نوشتن google.com ، آدرس 173.194.32.33 که یکی از IP های گوگل است را در نوار آدرس می نویسید؟
خوب در این صورت ما باید بی نهایت IP رو برای وارد شدن به سایت ها حفظ کنیم ! و استفاده از اینترنت تنها برای تعداد محدودی از افراد امکانپذیر می شد ! در اینجاست که اهمیت سرویس DNS مشخص می شود.در واقع DNS ، IP ها را به اسم سایت ها و بالعکس ، اسامی سایت ها را به IP های آنها تبدیل می کند.یعنی شما زمانی که در نوار آدرس مرورگر خود مثلا Itpro.ir را تایپ می کنید،DNS فورا IP مربوط به این سایت را پیدا می کند و از طریقIP آن ،وارد Itpro.ir می شود.
حال این DNS Server چیست و در کجا قرار دارد؟DSN Server نوع به خصوصی از کامپیوتر است که معمولا به صورت پیشفرض ،شرکت ارائه دهنده ی اینترنت یا همان ISP ،IP های DNS Server را در اختیار کاربران خود قرار می دهد و گاهی چون این سرویسی که در اختیار مشتریان خود قرار می دهد سرعت و کیفیت پایینی دارد سبب کند شدن سرعت در گرفتن اطلاعات می شود.از اینرو تغییر DNS پیش فرض ISP با یک DNS با کیفیت، راه حل مناسبی است.
البته برای بهبود عملکرد DNS،هر کاربر پس از وارد شدن به سایتی برای اولین بار و تبدیل hostname آن سایت به IP اش ، آن IP در cache ی که مختص DNS است نگهداری می شود تا در صورتی که کاربر مجددا بخواهد از آن سایت استفاده کند،برای به دست آوردن IP ، به DNS Server مراجعه نشود و این سرعت را در شبکه بالا میبرد.
DNS Server ،اطلاعات مربوط به DNS را در تعدادی فایل که در هارددیسک سرور ذخیره می شوند،نگهداری می کند و این فایل ها مرتب به روزرسانی یا update می شوند که این باعث بهبود عملکرد و افزایش سرعت در به دست آوردن IP ها و اسامی سایت ها می شود.
بدین صورت که زمانی که شما برای اولین بار نام سایتی را وارد می کنید و DNS ،IP آن را به دست می آورد ،این IP در حافظه ی سرور آن باقی می ماند تا دفعه ی بعدکه شما خواستید مجددا از آن سایت استفاده کنید ،با داشتن IP آن در Cache مربوط به DNS (یا حافظه ی سرور )،بالا آمدن سایت سریعتر انجام شود.به شکل زیر توجه کنید.
آموزش دستورات شبکه | آموزش Nslookup | نحوه کار DNS
در این شکل کاربر قصد وارد شدن به سایت www.example.com را دارد.پس از وارد کردن hostname در مرورگر خود،درخواستش به نزدیکترین DNS ارسال می شود.DNS Server در مرحله 2 می گوید که "من IP متناظر با این hostname را در cache خود ندارم پس اجازه بده از یک سرور دیگر برایت بگیرم
".سپس درخواست بهServer DNS در مرحله 3 ارسال می شود.IP مورد نظر ما آنجا وجود دارد.در رمحله ی بعد این IP ابتدا در cache مربوط به DNS مرحله ی 2 ذخیره می شود تا در دفعات بعدی اگر کاربر مجددا خواست از این سایت استفاده کند ، دسترسی به این IP با یک مرحله کمتر انجام شود و سپس IP برای کاربر ارسال و کاربر می تواند وارد سایت مورد نظر خود شود.
DNS از دو قسمت تشکیل شده است: Forward lookup zone و Reverse lookup zone که هر کدام وظیفه ی خاصی دارند.در Forward lookup zone ،IP ها به اسامی تبدیل می شوند و در Reverse lookup zone اسامی به IP ها.حال که به صورت مختصر با DNS و مفهوم آن آشنا شدید ، به معرفی NSLookup می پردازیم.
کاربرد دستور NSLookup
NSLookup یک ابزار مفید برای خطایابی ، تست و رفع اشکال مشکلات مربوط به DNS است.زمانی که از این کامند استفاهده می کنیم ،نام host و IP آدرس DNS سیستم نشان داده می شود.درصورتی که DNS ،fail شود یا اطلاعات نادرست ارائه دهد،سرعت برقراری ارتباط در شبکه کاهش می یابد و client ها دچار مشکل می شوند چرا که همانطور که در مورد عملکرد DNS بیان کردیم،Client ها دیگر نمی توانند از طریف اسامی سایتها وارد آنها شوند .
در شبکه های برمبنای ویندوز،اکتیودایرکتوری ها به DNS نیازمندند در واقع به عبارتی اگر DNS، fail شود اکتیودایرکتوری و domain نیز fail خواهند شد. NSLook up ،انواع رکوردها در DNS Server را بررسی می کند و برای خطایابی در عدم اتصال سیستم به سیستم های دیگر استفاده می شود.
در صورتی که رکورد اشتباهی در DNS Server وجود داشته باشد یا اصلا رکوردی وجود نداشته باشد،برای بررسی مشکل می توان از این کامند استفاده کرد.در صورتی که با Ping،IPمربوط به سرور توانستید از آن Reply بگیرید اما از طریق Ping نام آن سرور نتوانستید،مطمئن باشید که مشکل از DNS شماست.