دسترسی به Raspberry Pi از شبکه داخلی ساده است ، اما اگر بخواهید دسترسی به PI را از راه دور و در بستر اینترنتی فعال نماییم روشهای مختلفی وجود دارد. مثلا سرویس DDNS یک انتخاب رایگان خواهد بود.لازم به ذکر است که اعتبار این روشها به روتر ما / یا ارائه دهنده اینترنت بستگی دارد. مشکل عمده برای دسترسی به شبکه داخلی که PI به آن متصل است؛ از اینترنت، روترهای داخلی معمولا یک IP ثابت ندارند. با توجه به کمبود آدرس های IP ممکن است پس از راه اندازی مجدد روتر شما یک آدرس جدید از ISP خود دریافت کند ، یک روش بسیار رایج برای دسترسی آسان به شبکه داخلی از طریق اینترنت استفاده از DDNS میباشد.
چند اصطلاح IP
تعریف IP Address
سیستمهای کامپیوتری در شبکهی اینترنت به واسطهی یک رشته از اعداد به اسم IP Address ها شناسایی میشوند.
تفاوت IP داخلی و خلارجی
همان طور که در تصویر می بینید، یک روتر معمولا دارای چند اتصال شبکه میباشد
IP شبکه داخلی
روتر به دستگاه های متصل به شبکه داخلی یک IP داخلی اختصاص می دهد که توسط سرویس DHCP روتر اداره می شود،
IP شبکه خارجی
روتر یک IP خارجی یا عمومی) اختصاص داده شده توسط ارائه دهنده خدمات اینترنت (ISP) دارد. تمام دستگاه های داخل شبکه داخلی از این آدرس برای دسترسی به اینترنت استفاده می کنند. روتر از آدرس شبکه ترجمه آدرس ( NAT ) یا سایر روش های مشابه برای مطابقت با آدرس IP داخلی با درخواست های خارجی استفاده می کند. جهت دریافت آدرس فعلی IP خارجی خود، می توانید فرمان زیر را تایپ نمایید
curl ip.changeip.com
تعریف DNS
Domain Name System، سامانهی نام دامنه، این سیستم تبدیل کنندهی آدرس IP به نام دامنه و حروفی است که برای انسان قابل خواندن و درک است. از آن جایی که انسانها توانایی حفظ کردن اعداد طولانی را ندارند، DNSها برای ترجمهی یک نام واقعی (نام دامنه یا اسامی سایتها برای مثال digispark.ir ) به آدرسهای آی پی استفاده میشوند. به این صورت است که وقتی آدرس سایتی را در مرورگر خود وارد میکنید، DNS آن را به آدرس آیپی ترجمه کرده و برای شبکهی اینترنت میفرستد تا سایت مورد نظر را پیدا کند و آن را به شما نمایش دهد. میتوان اینگونه تعبیر کرد که DNS مانند دفترچهی تلفنی است که میتواند نامهای قابل فهم برای انسان را به اعدادی که شبکهی اینترنت آنها را میفهمد، ترجمه کن
مفهوم دقیق DDNS
Dynamic DNS سامانهی نام دامنه پویا یا همان DDNS یک سرویس است. نام دامنههای اینترنتی را به آدرس IP تبدیل میکند. شاید بگویید DNS هم که همین کار را میکرد! اما باید دانست بر خلاف DNS که تنها با آدرسهای آی پی استاتیک کار میکند. DDNS به گونهای طراحی شده، که از آدرسهای IP پویا (متغیر) نیز پشتیبانی مینماید. این سرویس DDNS است که به شما اجازه میدهد تا از هر نقطه از جهان به کامپیوتر خانگی خود دسترسی پیدا کنید.
عملکرد سرویس DDNS
برای استفاده از DDNS، فقط کافیست از یک ارائه دهنده DNS پویا اشتراک گرفته و نرم افزار را بر روی سیستم خود نصب نمایید. نرم افزار پس از اجرای تغییرات آدرس IP پویا را رویت و هنگامی که آدرس تغییر می کند، با سرویس DDNS ارتباط برقرار کرده و اکانت شما را با آدرس IP جدید به روز مینماید.
روش تهیه سرویس DDNS رایگان
سرویس رایگانی که من بدون مشکل استفاده می کنم. تا به امروز هم در خدماتش اختلالی به وجود نیامده است. سرویس رایگان Noip میباشد. جهت استفاده از این سرویس نیاز به انجام سه مرحله است. ۱- ابتدا باید در سایت ثبت نام کرده و یک حساب کاربری ایجاد نمائید. ۲- سپس No-IP DUC را بر روی برد رزبری پای Raspberry Pi نصب کرده و اطلاعات حساب کاربری را در آن وارد مینماییم. ۳- تنظیمات مربوط به اتصال مودم یا همان Port Forwarding را انجام میدهیم. در مرحله بعدی بایستی اشتراک رایگان از سایت NoIP تهیه کنیم. ابتدا وارد سایت noip.com میشویم. سپس مانند تصویر زیر در صفحه اول سایت یک نام برای ادرس DNS خود انتخاب کنید. سپس مراحل را ادامه دهید.
یک ادرس ایمیل معتبر وارد کنید و پسورد اکانت را تعریف کنید. در پایین صفحه DNS که قبل دادید قابل مشاهده است. تیک گزینه قوانین را تایید کنید. سپس گزینه free sing up را کلیک کنید.
وارد ایمیل خود شده و لینک دریافتی را اجرا کنید. در این حالت ایمیل شما تایید میشود .بعد از تایید، مراحل را مشاهده میکنید در مرحله ۲ اپ را دانلود کنید.
نحوه نصب No-IP DUCدر Raspberry Pi
یکی از راههای اطلاع DNS Server از تغییر آدرس ip دستگاههایی که رکورد آنها در دیتا بیس ذخیره شده است. نرم افزارهایی هستند که شرکتهای ارائه دهنده DDNS عرضه میکنند. وب سایت NoIP هم از همین روش بهره میبرد. این کمپانی نرم افزار Dynamic Update Client یا DUC را ارائه کرده است. جهت نصب این سرویس بر روی برد رزبری پای Raspberry Pi ابتدا یک پوشه را برای نصب نرم افزار سرویس دهنده ایجاد میکنیم. ترمینال را باز کرده و فرامین زیر را وارد مینماییم.
mkdir / home / pi / noip
سپس وارد پوشه مربوطه میشویم.
cd / home / pi / noip
پس از ایجاد پوشه نرم افزارDUC را دانلود می نماییم .
wget https://www.noip.com/client/linux/noip-duc-linux.tar.gz
سپ آن را از حالت فشرده خارج مینماییم.
tar vzxf noip-duc-linux.tar.gz
سپس وارد فایل دانلود شده میشویم.
. cd noip-2.1.9-1
و برنامه را نصب مینماییم.
sudo make sudo make install
بعد از تایپ “sudo make install” بایستی نام کاربری و رمز عبور حساب کاربری که در سایت noip ثبت نام کرده اید را وارد نمایید. در ادامه هنگامی که از شما خواسته می شود زمان بروز رسانی را وارد نمایید که باید ۵ یا بیشتر را انتخاب کنید. فاصله زمانی در دقیقه میباشد. اگر ۵ را انتخاب کنید، فاصله به روز رسانی ۵ دقیقه خواهد بود. اگر ۳۰ را انتخاب کنید، فاصله ۳۰ دقیقه خواهد بود. سپس فرمان زیر را وارد کنید.
sudo / usr / local / bin / noip2
جهت بررسی اینکه سرویس درست کار میکند، میتوانید دستور زیر را اجرا کنید.
sudo noip2 -S
اجرای خودکار NoIP با روشن شدن Raspberry Pi
زمان راه اندازی pi جهت استارت noip2 نیاز به اجرای فرمان زیر میباشد.
$ sudo noip2
با استفاده از systemd شرایطی را فراهم میآوریم که در زمان راه اندازی سیستم noip2 فعال گردد. یا در زمان متوقف شدن مجدد راه اندازی گردد. با فرمان زیر مسیر دستور noip2 را بررسی مینماییم.
$ which noip2 /usr/local/bin/noip2
به هر حال، اکنون می دانیم که noip2 در / usr / local / bin / noip2 اجرا می شود. من می خواهم یک سرویس systemd ایجاد کنم که فایل آن را اجرا کند. ایجاد فایل noip2.service در Sudo nano /etc/systemd/system/noip2.service متن زیر را درون فایل ایجاد شده قرار میدهیم.
[Unit] Description=No-ip.com dynamic IP address updater After=network.target After=syslog.target [Install] WantedBy=multi-user.target Alias=noip.service [Service] # Start main service ExecStart=/usr/local/bin/noip2 Restart=always Type=forking
این فایل را از صفحه https://gist.github.com/NathanGiesbrecht دریافت کرده ام.
sudo systemctl enable noip2 sudo systemctl start noip2 systemctl daemon-reload
وضعیت سرویس جدید را با فرمان زیر بررسی میکنیم.
$ systemctl status noip2.service
Pi را دوباره راه اندازی میکنیم.
$ sudo reboot
با فرمان زیر بررسی میکنیم که noip2 به طور خودکار راه اندازی میگردد یا خیر
$ ps –aux | grep noip2
پورت فورواردینگ
وارد صفحه مودم خود شوید پیشفرض اکثر مودم ها ۱۹۲٫۱۶۸٫۱٫۱ میباشد. نام کاربری و پسورد خود را وارد کنید که پیشفرض هر دو ان ها در مدم ها Admin میباشد. وارد بخش Advanced در مودم شوید و بخش Port Forwarding را انتخاب کنید.
مانند تصویر ، DNS که هنگام ساخت no ip ایجاد کرده اید را در بخش application بگزارید. در بخش پورت , پورت مورد نظر خود را وارد کنید ما به طور مثال ۸۰۰۰ انتخاب میکنیم. بخش پروتکل را به TCP تغیر دهید تا به درستی انجام شود تغیرات را در مودم ذخیره کنید.
تست از پورت فورواردینگ
برای تست عملکرد از سایت زیر استفاده کنید پرتی را که انتخاب کرده اید را وارد کنید و check your port را کلیک کنید. portchecktool.com درصورتی که پورت باز باشد تنظیمات به درستی انجام شده است در غیر این صورت مشکل وجود دارد و باید رفع شود. حال میتوانید dns و پورت را وارد پنل رات کنید و فایل خود را بسازید و از شبکه اینترنت کنترل را انجام دهید.
چنانچه در مراحل راه اندازی و انجام این پروژه با مشکل مواجه شدید، بدون هیچ نگرانی در انتهای همین پست، به صورت ثبت نظر سوالتان را مطرح کنید. من در سریعترین زمان ممکن پاسخ رفع مشکل شما را خواهم داد. همچنین اگر ایرادی در کدها و یا مراحل اجرایی وجود دارند میتوانید از همین طریق اطلاع رسانی کنید.
پروژه و دریافت بن ارسال رایگان
برای دریافت بن خرید از دانشجو کیت، کاربران بایستی با استفاده از وسایل این آموزش، پروژه را اجرا کرده و یا حتی مدار جدیدی تعریف کنید. سپس از اجرای کار فیلم گرفته و در شبکههای اجتماعی از جمله آپارات و اینستگرام، با هشتگهای دیجی_اسپارک دانشجوکیت digispark daneshjookit منتشر کنند. سپس از طریق بخش نظرات در ادامه همین آموزش، جهت دریافت بن خرید ارسال رایگان به ارزش ۱۲۰۰۰ تومان از دانشجو کیت، لینک را زیر همین پست ارسال کنید.
در پایان نظرات و پیشنهادات خود را با ما درمیان بگذارید و با اشتراک گذاری این آموزش در شبکه های اجتماعی , از وبسایت دیجی اسپارک حمایت کنید.
با سلام و خسته نباشید
یکی ۲ جا حروف دستور کوچیک بزرگ بود و فرمان اشتباه میشد
و از طرفی آی پی سایت مقصد فیلتره
باسلام لطفا محل هایی که تایپ فرمان اشتباه بوده رو بفرمایید ، ویرایشش کنم ، در خصوص فیلتر سایت باید بگم من درحال استفاده ازش هستم و مشکلی نداره لطفا مجدد بررسی بفرمایید
مرسی. کارت درست.
سلام
من از رزپری استفاده نمی کنم ولی میخوام تو مودمم یه پورت فوروارد انجام بدم برای یه برای یه بردی مثل nodmcu در این مورد باید چه مراحلی را طی کنم ؟؟؟؟
سلام
همه پورت ها فیلتر هستن ..عملا ddns کارایی نداره
سلام خسته نباشید من از سایت noip آی پی گرفتم ولی پینگ نمیشه
سلام.یک پروژه در شهرستان رو قراره با ۱۰ عدد کلید هوشمند سازی کنیم… کلید ها قابلیت وای فای دارند.
خط تلفن داریم؟!! واسه ای پی استاتیک چکار کنیم؟؟؟
با سلام
کاربر گرمی سوال شما بسیار کلی است. راهکارهای مختلفی برای این مورد وجود دارند. ولی انتظار دریافت پاسخ در یک کامنت را نداشته باشید. موارد را میتوانید طی درخواست مشاوره پیگیری کنید.
مودم سیمکارت ایرانسل دارم
نیاز به آی پی استاتیک دارم
با این روش میتونم آی پی استاتیک داشته باشم ؟
سایت خدمات سرویس ddns رایگان
http://ipbip.ir
قابلیت نصب بر روی هر سخت افزار و سیستم عامل
با سلام
سپاس از همراهی شما
سلام
الان که noip فیلتر هست چه سایتی رو پیشنهاد میدید
با سلام
بنده اطلاع دقیقی ندارم. از دیگر کاربران که در این خصوص راهکاری دارند، تقاضا دارم تا در این بحث شرکت کنند.
سلام آیا این روش برای دوربین های وای فای که فیلتر شدند و از راه دور نمیشه تصویرشون رو دید هم جواب میده؟
با سلام
در این خصوص اطلاعی ندارم. فقط اگر از طریق تحریمها مشکل در ارتباط داشته باشید میتوانید رفع کنید.