نکتهها و ترفندهای لینوکس(1978 مجموع کلمات موجود در متن) (6040 بار مطالعه شده است)
0.مقدمه
اگر
شمارههای مختلف مجلهی الکترونیکی
«ایرانتاکس»
را
پیگیری میکنید، حتما سری مقالات با
نام «نکتهها
و ترفندها»
را
به یاد دارید.
مدتی
است که به دلایل مختلف این بخش فعالیت
نمیکند.
بر
آن شدیم تا از این شماره این سر مقالات را
ادامه بدهیم و در هر شماره شما را با تعدادی
از دستورات جدید سیستم عامل گنو/لینوکس
در قالب نکتهها و ترفندها آشنا کنیم.
در
این شماره شما را با چند ترفند در ابزارهای
شبکه آشنا میکنیم.
1.تنطیم
ip
برای
کارت شبکه
برای
دادن یک IP
به
کارت شبکهی خود میتوانید از دستور
ifconfig
استفاده
کنید.
این
دستور مخفف Interface
Configure است.
برای
نمونه اگر IP
کارت
شبکهی شما 192.168.3.77
است
و Netmask
آن
255.255.255.0
است،
میتوانید از این دستور استفاده کنید.
#ifconfig eth0
192.168.3.77 netmask 255.255.255.0 up
دقت
کنید که کارت شبکهی ما eth0
است،
در برخی از سیستمها برای نامگذاری
کارت شبکه از lan0
استفاده
می شود.
کارت
شبکهی دوم شما eth1
یا
lan1
خواهد
بود.
اگر
میخواهید کارت شبکه را غیر فعال کنید
میتوانید از این دستور استفاده کنید:
#ifconfig eth0 down
دقت
داشته باشید که این IP
تا
زمانی قابل استفاده است که شما سیستم خود
را Restart
نکرده
باشید.
پس
از Restart
کردن
سیستم باید از ابتدا به کارت شبکهی خود
IP
بدهید.
(برای
اجرای این دستور به مجوز ریشه یا root
نیاز
دارید)
2.استفاده
از DHCP
اگر
در شبکهی شما سرویس dhcp
در
حال اجرا و استفاده است، برای دریافت ip
از
سرور dhcp
نمیتوانید
از ifconfig
استفاده
کنید و باید از دستور زیر استفاده کنید:
#dhclient eth0
پس
از چند پیغام و درخواست IP
کارت
شبکهی شما IP
و
تنطیمات شبکه را از سرور DHCP
دریافت
خواهد کرد.
در
برخی توزیعهای لینوکس dhclient
با
نام dhclient3
قابل
دسترسی است.
(برای
استفاده از این دستور در اغلب توزیعها
به مجوز ریشه نیاز خواهید داشت)
3.اضافه
کردن Default
Gateway
برای
افزودن Default
Gateway به
تنطیمات شبکه میتانید از دستور route
استفاده
کنید.
برای
نمونه اگر Default
Gateway شما
192.168.3.2
باشد
به این ترتیب اقدام میکنیم:
#route add default gw
192.168.3.2
اگر
اشتباهی در وارد کردن آدرس IP
رخ
داده و یا دیگر به Default
Gateway نیاز
ندارید میتوانید کلمهی add
را
به del
تغییر
بدهید و دستور را دوباره اجرا کنید.
#route del default gw
192.168.3.2
برای
اضافه کردن و یا کاستن یک Route
به
جدول مسیریابی هسته نیاز به مجوز ریشه
دارید.
4.دیدن
جدول مسیربابی شبکه
در
صورتی که به اینترنت متصل هستید ولی ارسال
و دریافت ندارید یا در شبکه نمیتوانید
آدرسهایی را که در subnetهای
دیگر هستند ببینید ممکن است مشکل از جدول
مسیر یابی هسته یا Kernel
Routing Table باشد.
برای
دیدن این جدول کافیست از دستور route
-n استفاده
کنید.
برای
نمونه به این دستور دقت کنید:
$route -n
Kernel IP routing
table
Destination
Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0
255.0.0.0 U 0 0 0
eth0
0.0.0.0
10.1.0.0 U 0 0
0 eth0
|
روش
دیگر استفاده از دستور netstat
-rn میباشد.
دقت
داشته باشید که نتایج همسان خواهد بود.
$ netstat -rn
Kernel IP routing
table
Destination
Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0
255.0.0.0 U 0 0 0
eth0
0.0.0.0
10.1.0.0 U 0 0 0
eth0
|
در
صورتی که در دستور netstat
-rn گزینهی
n-
را
استفاده نکنید، آدرسها از طریق سیستم
DNS
شما
ترجمه میشوند.
5. دیدن
کانکشنهای فعال
در
صورتی که مایل به دیدن کانکشنهای فعال
در سیستم خود هستید و میخواهید ببینید
کدام ابزار از چه پورتی استفاده میکند
میتوانید از دستور netstat
-ta استفاده
کنید.
در
این دستور به Netstat
میگوییم،
تمام ورودیها را نمایش بدهد.
(a-) و
نیز از او میخواهیم فقط کانکشنهای نوع
TCP
را
نمایش بدهد.(t-)
البته
میتوانید با افزودن گزینهی u-
از
netstat
بخواهید
تا کانکشنها یا اتصالاتی را که از پروتوکل
UDP
استفاده
میکنند را نیز نمایش دهد.
برای
نمونه به خروجی دستور زیر دقت کنید:
$netstat
-ta
Active
Internet connections (servers and established)
Proto
Recv-Q Send-Q Local Address Foreign Address
State
tcp
0 0 diz.navid:mysql *:*
LISTEN
tcp
0 0 *:sunrpc *:*
LISTEN
tcp
0 0 diz.navid:1111 *:*
LISTEN
tcp
1 0 201.11.44.67:45464 192.169.22.11:www
CLOSE_WAIT
tcp6
0 0 *:9418 *:*
LISTEN
tcp6
0 0 *:www *:*
LISTEN
|
و
مقایشه کنید با netstat
-u :
netstat
-ua
Active
Internet connections (servers and established)
Proto
Recv-Q Send-Q Local Address Foreign Address
State
udp
0 0 *:sunrpc *:*
|
6. پیگیری
مسیر
ممکن
است تمام تنطیمات شما صحیح باشد اما
نمیتوانید به آدرس خواسی دسترسی داشته
باشید.
در
چنین مواردی میتوانید مسیری را که بستهی
شما طی میکند، پیگیری یا ردگیری کنید.
برای
این کار از دستور traceroute
استفاده
میکنند.
برای
نمونه برای آنکه بدانید از چه مسیری به
سایت irantux.com
متصل
میشوید کافیست این دستور را وارد کنید:
$traceroute
irantux.com
traceroute
to irantux.com (80.68.87.19), 30 hops max, 40 byte packets
1
210.217.29.19 (210.217.29.19) 128.340 ms 190.858 ms 114.928 ms
2
210.27.29.10 (210.27.29.10) 106.911 ms 204.885 ms 111.903 ms
3
* * *
4
81.91.128.121 (81.91.128.121) 110.924 ms 106.936 ms 364.832 ms
5
81.91.128.233 (81.91.128.233) 121.896 ms 118.867 ms 122.971 ms
6
195.146.63.209 (195.146.63.209) 339.909 ms 129.945 ms 114.943
ms
7
pos4-11.ar03.ldn01.pccwbtn.net (63.218.52.9) 277.943 ms *
284.589 ms
8
pos11-1.br02.ldn01.pccwbtn.net (63.218.12.182) 277.318 ms
277.901 ms 266.932 ms
9
linx-224-gw.rbsov.bogons.net (195.66.224.228) 276.973 ms
linx-226-gw.thdo.bogons.net (195.66.226.228) 330.901 ms 257.786
ms
10
193.178.223.218 (193.178.223.218) 322.894 ms
43-242.rbsov.bogons.net (85.158.43.242) 331.905 ms
193.178.223.218 (193.178.223.218) 320.900 ms
11
43-242.rbsov.bogons.net (85.158.43.242) 324.928 ms 272.918 ms
336.950 ms
12
80.68.80.90 (80.68.80.90) 327.929 ms 324.903 ms
zeus.dh.bytemark.co.uk (80.68.87.195) 405.940 ms
|
همان
طور که مشاهده میکنید اطلاعات بسیار
مفیدی برای عیبیابی در مسیر شبکه میتوان
از این دستور دریافت نمود.
با
استفاده از خروجیهای این دستور میدانید
که چند Routing
Node در
مسیر شما تا مقصد قرار دارد، برای رسیدن
به هر نقطهی مسیریابی چقدر زمان طول
میکشد و آدرس Ipهای
هر نقطهی مسیریابی مشخص میشود.
البته
ممکن است گاهی با ***
مواجه
شوید که دلیل بر مشکلی نیست.
فقط
مسئولین شبکه در آن قسمت صلاح دیدهاند
تا IP
خود
را به صورت عمومی اعلام نکنند.
7.تغییر
آدرس MAC
در
صورتی که بنا بر هر دلیل نمیخواهید از
آدرس MAC
حال
حاضر خود استفاده کنید میتوانید به
سادگی این آدرس را تغییر دهید.
برای
این کار نیاز به نصب هیچ برنامهی جدیدی
نیست.
دستور
ifconfig
را
که به خاظر دارید.
میتوانید
از طریق این دستور آدرس کنونی MAC
خود
را بیابید.
برای
نمونه:
$
ifconfig eth0
eth0
Link encap:Ethernet HWaddr 00:BB:CE:13:E4:1A
inet
addr:10.0.0.1 Bcast:10.255.255.255 Mask:255
|
همان
طور که در خروجی نمونهی بالا میبینید
آدرس سختافزاری کارت شبکه یا MAC
آدرس
برابر مقدار زیر است:
«00:BB:CE:13:E4:1A»
خوب
برای تغییر آدرس MAC
میتوانید،
از دستور ifconfig
به
این ترتیب استفاده کنید:
#ifconfig eth0 hw ether
00:11:22:33:44:55
توجه
داشته باشید که قبل از اعمال تغییرات
بایداز طرق دستور ifconfig
eth0 down و
یا ifdown
eth0 کارت
شبکهی مورد نظر را غیر فعال کنید.
سپس
MAC
را
تغییر بدهید و دوباره با استفاده از روشی
که در قسمت 1.
ذکر
شد، کارت شبکه را فعال کنید.
برای
تغییر آدرس MAC
کارت
شبکه (اینترفیس
شبکه)
نیاز
به مجوز کاربر ریشه یا root
خواهید
داشت.
در
شمارهی آینده به تعداد بیشتری نکته از
ابزارهای شبکه در لینوکس خواهیم پرداخت.
نویسنده:
نوید
عبدی
PDF Version
|