یکی از پروتکل‌های جابجایی فایل Trivial File Transfer Protocol یا به اختصار TFTP است که در شبکه‌های کوچک به وفور استفاده می‌شود. این پروتکل شبیه به FTP است اما سبک‌تر است و منابع کمتری مصرف می‌کند و البته محدودتر از FTP است. با توجه به سبک‌تر بودن، مدیران شبکه از TFTP استفاده‌ی زیادی می‌کنند. در کاربردهایی مثل بروزرسانی فرم‌ویر یا پیکربندی تنظیمات سیستم‌های شبکه نیز از TFTP استفاده می‌شود.

در این مقاله می‌خواهیم با بهترین نرم‌افزارهای رایگان که سیستم ویندوزی را به سرور TFTP تبدیل می‌کنند آشنا شویم و نرم‌افزارهایی برای لینوکس و مک‌او‌اس معرفی کنیم.

آشنایی با پروتکل TFTP و کاربردهای آن

پروتکل Trivial File Transfer Protocol نسخه‌ای ساده شده از پروتکل انتقال فایل یا FTP است که از پروتکل TCP که نیاز به کانکشن دارد، استفاده نمی‌کند بلکه از UDP روی IP port 69 بهره می‌گیرد. با توجه به اینکه کانکشن برقرار نمی‌شود، از دست رفتن بسته‌های داده حین جابجایی فایل‌ها محتمل است و در نتیجه هم کلاینت و هم سرور می‌بایست این موضوع را مدیریت کنند. پروتکل TFTP کمی کندتر است چرا که از قاب‌بندی پشتیبانی نمی‌کند و در نتیجه اگر تأخیر در شبکه زیاد باشد، بازدهی آن کاهش پیدا می‌کند. به همین علت است که معمولاً در شبکه‌های محلی مورداستفاده قرار می‌گیرد.

یکی از ساده‌سازی‌های TFTP در قیاس با FTP این است که راهی برای دسترسی دایرکتوری یا در واقع لیست کردن فایل‌های سمت سرور وجود ندارد. راهی برای احراز هویت کاربران و همین‌طور روشی برای رمزگذاری در کار نیست. کاربر می‌بایست نام فایلی که قرار است جابجا شود را دقیقاً بداند. با توجه به اینکه نمی‌توان فولدرها و محتویاتشان را لیست کرد، حتی باید مسیر دقیق فایل نیز مشخص باشد. آخرین محدودیت و ساده‌سازی این است که راهی برای تنظیم دسترسی خواندن و نوشتن فایل‌ها وجود ندارد.

با توجه به محدودیت‌هایی که ذکر شد، روشن است که چرا TFTP در شبکه لوکال یا محلی استفاده می‌شود: سرعت، امنیت و قابلیت‌ها برای کاربری در شبکه‌های بزرگ مثل اینترنت، مناسب نیست. بنابراین معمولاً مدیران شبکه در شبکه‌های محلی برای اموری مثل آپدیت کردن فرم‌ویر وسایل مختلف مثل سوییچ‌ها، روترها، بالانسرها و ... از آن استفاده می‌کنند. یک کاربری جالب دیگر نیز استفاده از BOOTP برای دانلود کردن ایمیج سیستم عامل روی کامپیوترهای بدون دیسک است.

آشنایی با مفهوم دقیق دیسک، پارتیشن، والیوم، درایو و کانتینر در سیستم عامل‌های مختلف

در سیستم عامل‌هایی که بر اساس Unix طراحی شده‌اند، از واژه‌های مختلفی برای اشاره به هارددیسک و پارتیشن‌ها استفاده می‌شود. به عبارت دیگر در سیستم‌ عامل‌هایی مثل لینوکس اوبونتو یا مک‌او‌اس اپل و همین‌طور ویندوز، گاهی Drive به معنی هارددیسک درایو و یا درایو SSD است و گاهی منظور از درایو، یکی از پارتیشن‌های فضای ذخیره‌سازی است. به همین صورت گاهی منظور از ایمیج، تصویری از تمام اطلاعات یک پارتیشن یا درایو است و گاهی منظور یک فایل تصویری مثل JPG است.

در این مقاله به دنبال تعریف دقیق و علمی Drive و Partition و Volume و همین‌طور Disk و Image هستیم که در مطالعه کردن متون تخصصی و علمی در مورد سیستم عامل‌ها و شیوه‌ی کاربری، مفید واقع می‌شود. در کاربری‌های روزمره نیز بهتر است با مفهوم دقیق درایو، پارتیشن، ایمیج و دیسک و ... آشنایی کامل داشته باشیم تا منظور کاربران مبتدی و متخصص را اشتباه برداشت نکنیم.

در مقابل استفاده از پروتکل FTP بسیار گسترده و عمومی است چرا که امنیت بالاتری دارد و سرعت آن با افزایش تأخیر افت شدیدی پیدا نمی‌کند. از FTP حتی برای جابجایی فایل بین گوشی و تبلت اندرویدی و کامپیوترها استفاده می‌شود:

آموزش انتقال فایل از اندروید به کامپیوتر با سرور FTP

برای منتقل کردن فایل‌ها از اندروید به ویندوز یا به عبارت دیگر از گوشی به کامپیوتر، راه‌های مختلفی مثل استفاده از کابل USB و سرویس‌های آپلود و دانلود فایل وجود دارد اما شاید بهترین روش، استفاده از وای-فای و شبکه‌ی وای-فای باشد چرا که سرعت نسبتاً بالایی دارد و به صورت بی‌سیم انجام می‌شود.

برای انتقال فایل‌های به صورت بی‌سیم می‌توان از اپلیکیشنی مثل SHAREit یا Xender یا Zapya استفاده کرد اما راهکار دیگر، استفاده از پروتکل انتقال فایل یا FTP است که از نظر سادگی، مثل کپی کردن فایل‌ها از فولدری به فولدر دیگر است! در واقع می‌توان در فایل اکسپلورر ویندوز، فولدرهای گوشی اندرویدی را مثل فولدرهای معمولی دیگر باز کرد و فایل‌ها را انتخاب و کپی کرد!

در این مقاله به آموزش استفاده از سرور FTP برای جابجا کردن فایل بین گوشی یا تبلت اندرویدی و کامپیوتر می‌پردازیم. با سیاره‌ی آی‌تی همراه شوید.

بهترین نرم‌افزارهای سرور TFTP برای ویندوز

ویندوز محبوب‌ترین سیستم عامل است و به همین علت برای این سیستم عامل، می‌توان چندین نرم‌افزار رایگان TFTP معرفی کرد که همگی از نظر قابلیت‌ها و امکانات، مشابه هستند. البته تفاوت‌ها و ویژگی‌های خاص نرم‌افزارهایی که معرفی می‌کنیم را بررسی خواهیم کرد.

SolarWinds TFTP server

کمپانی SolarWinds از فعالان حوزه‌ی ابزارهای مدیریت شبکه است. تقریباً برای تمام امور شبکه، نرم‌افزاری توسط سولارویندس تهیه شده است و خوشبختانه قیمت اکثر نرم‌افزارها نسبت به محصولات مشابه پایین است و حتی دوره‌ی آزمایشی دارند. در مورد نرم‌افزار ایجاد سرور TFTP نیز این کمپانی یک نرم‌افزار رایگان ارایه کرده است. اگر آشنایی مقدماتی با شبکه و مدیریت سیستم‌های ویندوزی داشته باشید، کار کردن با نرم‌افزار SolarWinds TFTP server برایتان ساده خواهد بود.

از ویژگی‌های اصلی نرم‌افزار SolarWinds TFTP server می‌توان به رایگان بودن ۱۰۰ درصدی تمام امکانات و بخش‌ها و قابلیت اجرای چند فرآیند انتقال به صورت موازی از چند ابزار مختلف اشاره کرد. با وجود اینکه پروتکل TFTP از قابلیت‌های رمزگذاری و امنیتی پشتیبانی نمی‌کند، در نرم‌افزار SolarWinds TFTP server می‌توان دریافت کانکشن را فقط از برخی IP Addressها مجاز تنظیم کرد.

با نرم‌افزار SolarWinds TFTP server می‌توان فایل‌هایی با حجم حداکثر ۴ گیگابایت را در شبکه منتقل کرد که معمولاً کافی است.

Windows TFTP Utility

شاید نام این نرم‌افزار شما را به اشتباه بیاندازد و تصور کنید که محصولی از مایکروسافت برای سیستم عامل ویندوز است، دقت کنید که این نرم‌افزار توسط mgenti و به زبان C# و با تکیه بر فریم‌ورک .Net مایکروسافت نوشته شده اما محصول مایکروسافت نیست. حجم این نرم‌افزار بسیار کم است و البته تنظیمات خاصی در آن وجود ندارد. یکی از محدودیت‌ها این است که نمی‌توان مشخص کرد که کانکشن‌های دریافتی مجاز، از کدام شناسه‌های IP هستند.

دقت کنید که یکی از علل کم بودن حجم نرم‌افزار این است که از فریم‌ورک دات‌نت استفاده شده است. بنابراین می‌بایست فریم‌ورک .Net را روی کامپیوتر ویندوزی خویش نصب کنید که البته در ویندوز ۱۰ معمولاً به صورت پیش‌فرض نصب شده و آماده‌ی استفاده است.

یکی از مزایای Windows TFTP Utility این است که کلاس .net خاصی برای دسترسی عموم برنامه‌نویسان در نظر گرفته شده و به راحتی می‌توان از قابلیت‌های آن در نرم‌افزارهای دیگر استفاده کرد. برای دانلود نرم‌افزار می‌بایست به وب‌سایت سورس‌فورج مراجعه کنید:

Tftpd32 و Tftpd64

نرم‌افزار Tftpd32 توسط Philippe Jounin طراحی شده و یکی از محبوب‌ترین نرم‌افزارهای TFTP Server برای ویندوز است. در حقیقت در این نرم‌افزار قابلیت‌ها و امکانات زیادی پیش‌بینی شده که آن را محبوب می‌کند. سرور DNS و سرور DHCP و همین‌طور سرور SNTP برای همگام‌سازی ساعت و تاریخ و در نهایت قابلیت ایجاد سرور TFTP همگی در یک نرم‌افزار جمع شده است.

احتمال اینکه یک کاربر عادی بخواهد کامپیوتری را به چند نوع سرور یادشده تبدیل کند، بسیار کم است اما در شبکه‌های نسبتاً کوچک، بهتر است تمام این موارد در یک کامپیوتر مرکزی ایجاد و مدیریت شود. در شبکه‌های بزرگ معمولاً برای هر یک از موارد، یک سرور مجزا در نظر گرفته می‌شود.

از ویژگی‌های مفیدی که در نرم‌افزار Tftpd32 وجود دارد، قابلیت نمایش پیشرفت انتقال فایل، فیلتر کردن اینترفیس‌ها، بهینه‌سازی امنیت و ابزار دایرکتوری است.

با مراجعه کردن به وب‌سایت رسمی این نرم‌افزار، می‌توانید نسخه‌ی نصبی و یا نسخه‌ی زیپ‌شده را دانلود کنید. نسخه‌ی مشابهی برای سیستم عامل و پردازنده‌های ۶۴ بیتی با عنوان Tftpd64 نیز منتشر شده است.

WhatsUp Free TFTP Server

سازنده‌ی پیام‌رسان محبوب WhatsUp هم یک نرم‌افزار سرور TFTP رایگان برای سیستم‌های ویندزوی منتشر کرده است. کمپانی Ipswitch که در حوزه‌ی مانیتورینگ سرور و شبکه فعالیت می‌کند، برای تبدیل کردن سیستم ویندوزی به سرور TFTP یک نرم‌افزار رایگان به اسم WhatsUp Free TFTP Server منتشر کرده است. این نرم‌افزار برای مهندسین شبکه عالی است اما فقدان مستندات، استفاده از آن توسط کاربران مبتدی را مشکل می‌کند.

برای دانلود نرم‌افزار می‌بایست ابتدا فرم آنلاین را پر کنید و آدرس ایمیل خود را تأیید کنید و سپس لینک دانلود در اختیار شما قرار می‌گیرد.

haneWIN TFTP Server

شرکت haneWin یک کمپانی کوچک است که نرم‌افزارهای شبکه برای سیستم عامل ویندوز طراحی می‌کند. برخی نرم‌افزارهای این شرکت برای ویندوز ۹۵ و ۹۸ طراحی شده و نشان‌دهنده‌ی سابقه‌ی طولانی‌مدت این کمپانی است. این شرکت کوچک نرم‌افزارهای سرور DHCP و DNS و NFS و همین‌طور TFTP ارایه کرده است. نرم‌افزار haneWIN TFTP Server یکی از نرم‌افزارهای توانمند است که به صورت نسخه‌ی ۳۲ بیتی و ۶۴ بیتی منتشر شده است.

یکی از ویژگی‌های مفیدی که در haneWIN TFTP Server پیش‌بینی شده، محدود کردن دسترسی بر اساس شناسه‌ی IP کلاینت است. حتی می‌توان دسترسی خواندن و نوشتن و دسترسی به فولدرها را با توجه به شناسه‌ی IP کلاینت تنظیم کرد که در پروتکل TFTP به صورت پیش‌فرض وجود ندارد.

این نرم‌افزار به صورت یک سرویس ویندوزی و یک اپلیکیشن کوچک در نقش کنترل پنل ارایه می‌شود و به کمک کنترل پنل می‌توان تنظیمات سرور را مدیریت کرد و انتقال فایل‌ها را مانیتور کرد. برای سمت کلاینت نیز یک DLL ارایه شده که از طریق واسط خط دستور، می‌توان از آن استفاده کرد.

WinAgents TFTP Server

شرکت WinAgents نیز در عرصه‌ی محصولات نرم‌افزار مدیریت شبکه فعالیت می‌کند و یکی از مهم‌ترین نرم‌افزارهای آن، WinAgents TFTP Server است. نرم‌افزار WinAgents TFTP Server روی اغلب سیستم عامل‌های ویندوز سرور که پس از ویندوز XP معرفی شده و حتی خود ویندوز ایکس‌پی و ویندوز ۲۰۰۰ اجرا می‌شود. به علاوه نسخه‌ی ۳۲ و ۶۴ بیتی آن منتشر شده است.

ویژگی جالب نرم‌افزار WinAgents TFTP Server این است که فولدرهای مجازی یا Virtual Folders در اختیار کلاینت‌ها قرار می‌دهد در حالی که در سیستم سرور، فولدر موردبحث واقعاً وجود ندارد. به عبارت دیگر فولدر مجازی برای مدیریت کردن فایل‌ها و فولدرهای سمت سرور، پیش‌بینی شده است.

متأسفانه پس از ۳۰ روز آزمایشی، تعداد دانلودهای هم‌زمان از سرور به ۲ مورد محدود می‌شود و برای حذف این محدودیت، می‌بایست نسخه‌ی پولی را تهیه کرد.

Spiceworks TFTP Server For IT Pros

نرم‌افزار Spiceworks TFTP Server For IT Pros در حقیقت یک نرم‌افزار سرور TFTP ساده نیست بلکه سیستمی برای مدیریت در مقیاس کوچک محسوب می‌شود. این نرم‌افزار از پروتکل TFTP بهره می‌گیرد تا فایل‌های پیکربندی را از وسایل مختلف جمع‌آوری کرده و با هم مقایسه کند. به این ترتیب مطمئن می‌شویم که تنظیمات سیستم‌ها مشابه است.

برای بروزرسانی فریم‌ویر نیز می‌توان از این نرم‌افزار استفاده کرد و حتی در کاربری‌های خاص دیگر از آن استفاده کرد. توجه کنید که برای دانلود می‌بایست اطلاعات شخصی خود را ثبت کنید.

بهترین نرم‌افزارهای راه‌اندازی سرور TFTP برای لینوکس

بیش از ۷۰ درصد سرورها از سیستم عامل لینوکس بهره می‌برند و معمولاً مدیران شبکه نیز لینوکس را به عنوان بهترین سیستم عامل برای این امور معرفی و استفاده می‌کنند. نکته‌ی جالب این است که در اغلب توزیعات محبوب لینوکس، حداقل یک نرم‌افزار سرور TFTP به صورت پیش‌فرض وجود دارد هر چند معمولاً فعال نیست و یا نصب نشده است. معمولاً نرم‌افزار سرور TFTP‌ به صورت یک پردازش پس‌زمینه با عنوان TFTPd در لینوکس شناسایی می‌شود.

توجه کنید که در ویندوز به پردازش‌های پس‌زمینه و نرم‌افزارهایی که در پس‌زمینه مشغول به کار هستند معمولاً سرویس گفته می‌شود و در سیستم عامل‌های شبیه به Unix مثل لینوکس و مکینتاش اپل، Daemon یا دیمن گفته می‌شود و با حرف d در انتهای نام سرویس، مشخص می‌شود.

atftpd

در دنیای لینوکس یکی از محبوب‌ترین نرم‌افزارهای سرور TFTP، نرم‌افزار Advanced TFTP server است که به صورت پکیجی به اسم aftpd‌ منتشر می‌شود. این نرم‌افزار برای راه‌اندازی سرور مالتی‌ترد که از مالتی‌کست پشتیبانی می‌کند، عالی است. بسته به اینکه از کدام توزیع لینوکس استفاده می‌کنید، می‌توان از apt-get یا yum برای دانلود و نصب کردن atftpd استفاده کرد.

برای نصب کردن atftpd به کمک apt-get از دستور زیر در ترمینال لینوکس استفاده کنید:

$ sudo apt-get install atftpd

برای ویرایش پیکربندی و انجام تنظیمات می‌بایست فایل مربوطه که در مسیر /etc/default/atftpd واقع شده را ویرایش کرد. فایل کانفیگ معمولاً متنی به صورت زیر دارد که می‌توان آن را ویرایش کرد:

USE_INETD=true OPTIONS="--tftpd-timeout 300 --retry-timeout 5 --mcast-port 1758 --mcast-addr 239.239.239.0-255 --mcast-ttl 1 --maxthread 100 --verbose=5 /srv/tftp"

tftpd-hpa

نرم‌افزار بعدی برای راه‌اندازی سرور TFTP در لینوکس، نرم‌افزار tftpd-hpa است که مستندات خوبی دارد و نیازمندی‌های آن نیز کم است. برای دریافت این نرم‌افزار از دستور apt-get استفاده کنید:

$ sudo apt-get install tftpd-hpa

برای ویرایش تنظیمات این نرم‌افزار نیز می‌بایست فایل کانفیگ که در مسیر /etc/default/tftpd-hpa را ویرایش کرد. متن این فایل معمولاً به صورت زیر است:

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/var/lib/tftpboot"

TFTP_ADDRESS=":69"

TFTP_OPTIONS="--secure"

پس از تغییرات در فایل پیکربندی، می‌بایست سرور TFTP را ری‌استارت کرد که به کمک دستور زیر انجام می‌شود:

sudo service tftpd-hpa restart

فعالسازی سرور TFTP در macOS اپل

سیستم عامل مکینتاش در عرصه‌ی مدیریت شبکه کمتر کاربرد دارد اما خوشبختانه ابزار سرور TFTP به صورت پیش‌فرض در آن موجود است ولیکن به صورت پیش‌فرض فعال نیست. برای فعالسازی کافی است دستور زیر را در ترمینال مک اجرا کنید:

sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist

با فشار دادن کلید اینتر، رمز عبور از شما سوال می‌شود. رمز عبور را وارد کرده و ادامه دهید و زمانی که نصب تکمیل شد، می‌توانید از دستور netstat برای تأیید اجرا، استفاده کنید:

$ netstat -n | grep *.69

udp4 0 .69 .*

udp6 0 .69 .*

با دستور فوق مشخص می‌شود که سرور TFTP در حال انتظار پورت ۶۹ است و کانکشنی که می‌تواند از نوع IPv4 یا IPv6‌ باشد را می‌پذیرد.

در صورت نیاز به بستن و خاموش کردن سرور TFTP می‌توان از دستور Unload استفاده کرد:

sudo launchctl unload -F /System/Library/LaunchDaemons/tftp.plist