NMBLOOKUP(1) User Commands NMBLOOKUP(1)

nmblookup - کلاینت NetBIOS بر روی TCP/IP برای جستجوی نام‌های NetBIOS

nmblookup [-M|--master-browser] [--recursion] [-S|--status] [-r|--root-port] [-A|--lookup-by-ip] [-B|--broadcast=BROADCAST-ADDRESS] [-U|--unicast=UNICAST-ADDRESS] [-T|--translate] [-f|--flags] [-?|--help] [--usage] [-d|--debuglevel=DEBUGLEVEL] [--debug-stdout] [--configfile=CONFIGFILE] [--option=name=value] [-l|--log-basename=LOGFILEBASE] [--leak-report] [--leak-report-full] [-R|--name-resolve=NAME-RESOLVE-ORDER] [-O|--socket-options=SOCKETOPTIONS] [-m|--max-protocol=MAXPROTOCOL] [-n|--netbiosname=NETBIOSNAME] [--netbios-scope=SCOPE] [-W|--workgroup=WORKGROUP] [--realm=REALM] {name}

این ابزار بخشی از مجموعه samba(7) است.

دستور nmblookup برای پرس‌وجوی نام‌های NetBIOS و نگاشت آن‌ها به آدرس‌های IP در شبکه با استفاده از پرس‌وجوهای NetBIOS بر روی TCP/IP به کار می‌رود. گزینه‌ها امکان هدایت پرس‌وجوی نام به یک محدوده پخش همگانی (Broadcast) خاص یا یک ماشین مشخص را فراهم می‌کنند. تمام پرس‌وجوها بر روی پروتکل UDP انجام می‌شوند.

-M|--master-browser

با جستجوی name از نوع 0x1d به دنبال مرورگر اصلی (Master Browser) می‌گردد. اگر name برابر با «-» باشد، جستجو روی نام ویژه __MSBROWSE__ انجام می‌شود. لطفاً توجه داشته باشید برای استفاده از نام «-»، باید اطمینان حاصل کنید که «-» به عنوان آرگومان پردازش نشود، برای مثال استفاده از: nmblookup -M -- -.

--recursion

بیت recursion desired را در بسته تنظیم می‌کند تا یک جستجوی بازگشتی انجام شود. این گزینه هنگام ارسال پرس‌وجوی نام به ماشینی که سرور WINS را اجرا می‌کند و کاربر مایل به پرس‌وجوی نام‌ها در سرور WINS است استفاده می‌شود. اگر این بیت تنظیم نشده باشد، در عوض کد پردازش استاندارد NetBIOS (پاسخ‌دهنده به پخش همگانی) روی ماشین استفاده می‌شود. برای جزئیات به RFC1001 و RFC1002 مراجعه کنید.

-S|--status

پس از اینکه پرس‌وجوی نام یک آدرس IP را برگرداند، یک پرس‌وجوی وضعیت گره (Node Status) نیز انجام می‌دهد. پرس‌وجوی وضعیت گره، نام‌های NetBIOS ثبت‌شده توسط یک میزبان را برمی‌گرداند.

-r|--root-port

تلاش برای متصل شدن (Bind) به پورت UDP شماره ۱۳۷ جهت ارسال و دریافت دیتاگرام‌های UDP. دلیل این گزینه، وجود یک باگ در Windows 95 است که پورت مبدأ بسته درخواست‌کننده را نادیده گرفته و فقط به پورت UDP شماره ۱۳۷ پاسخ می‌دهد. متأسفانه در بیشتر سیستم‌های یونیکس، برای متصل شدن به این پورت دسترسی ریشه (Root) لازم است، و علاوه بر این، اگر دیمن nmbd(8) روی این ماشین در حال اجرا باشد، آن هم به این پورت متصل می‌شود.

-A|--lookup-by-ip

مقدار name را به عنوان یک آدرس IP تفسیر کرده و یک پرس‌وجوی وضعیت گره روی این آدرس انجام می‌دهد.

-B|--broadcast <broadcast address>

ارسال پرس‌وجو به آدرس پخش همگانی (Broadcast) مشخص‌شده. بدون این گزینه، رفتار پیش‌فرض nmblookup ارسال پرس‌وجو به آدرس پخش همگانی رابط‌های شبکه است که یا به صورت خودکار شناسایی شده‌اند یا در پارامتر interfaces از فایل smb.conf(5) تعریف شده‌اند.

-U|--unicast <unicast address>

انجام یک پرس‌وجوی تک‌پخشی (Unicast) به آدرس یا میزبان مشخص‌شده در unicast address. این گزینه (همراه با گزینه -R) برای پرس‌وجو از یک سرور WINS مورد نیاز است.

-T|--translate

باعث می‌شود هر آدرس IP یافت‌شده در جستجو، از طریق جستجوی معکوس DNS به یک نام DNS تبدیل شود و قبل از هر جفت

IP address .... NetBIOS name

که خروجی استاندارد است، نمایش داده شود.

-f|--flags

نمایش فلگ‌هایی که بر نام جستجوشده اعمال می‌شوند. پاسخ‌های ممکن صفر یا چند مورد از این موارد هستند: Response، Authoritative، Truncated، Recursion_Desired، Recursion_Available، Broadcast.

name

نام NetBIOS مورد پرس‌وجو است. بسته به گزینه‌های قبلی این مقدار ممکن است یک نام NetBIOS یا آدرس IP باشد. اگر یک نام NetBIOS باشد، انواع مختلف نام را می‌توان با افزودن '#<type>' به انتهای نام مشخص کرد. این نام همچنین می‌تواند '*' باشد که تمام نام‌های ثبت‌شده در یک محدوده پخش همگانی (Broadcast) را بازمی‌گرداند.

-d|--debuglevel=level

پارامتر level یک عدد صحیح بین ۰ تا ۱۰ است. مقدار پیش‌فرض در صورت عدم تعیین این پارامتر، برای برنامه‌های کلاینت ۱ است.

هرچه این مقدار بالاتر باشد، جزئیات بیشتری درباره فعالیت‌های سرور در فایل‌های لاگ ثبت خواهد شد. در سطح ۰، فقط خطاهای حیاتی و هشدارهای جدی لاگ می‌شوند. سطح ۱ سطحی منطقی برای اجرای روزمره است - مقدار کمی اطلاعات درباره عملیات انجام‌شده تولید می‌کند.

سطوح بالاتر از ۱ مقدار قابل توجهی داده‌های لاگ تولید می‌کنند و فقط باید هنگام بررسی مشکل استفاده شوند. سطوح بالاتر از ۳ فقط برای استفاده توسعه‌دهندگان طراحی شده‌اند و حجم بسیار عظیمی از داده‌های لاگ تولید می‌کنند که بیشتر آن‌ها به شدت مبهم هستند.

توجه داشته باشید که مشخص کردن این پارامتر در اینجا، پارامتر log level را در فایل /etc/samba/smb.conf بازنویسی می‌کند.

--debug-stdout

این گزینه خروجی دیباگ را به STDOUT هدایت می‌کند. به طور پیش‌فرض تمام کلاینت‌ها پیام‌ها را در STDERR لاگ می‌کنند.

--configfile=<configuration file>;

فایل مشخص‌شده حاوی جزئیات پیکربندی مورد نیاز کلاینت است. اطلاعات موجود در این فایل می‌تواند برای کلاینت و سرور عمومی باشد، یا فقط گزینه‌های اختصاصی کلاینت مانند client smb encrypt را فراهم کند. برای اطلاعات بیشتر به /etc/samba/smb.conf مراجعه کنید. نام فایل پیکربندی پیش‌فرض در زمان کامپایل تعیین می‌شود.

--option=<name>=<value>

تنظیم گزینه smb.conf(5) با نام "<name>" به مقدار "<value>" از طریق خط فرمان. این تنظیم بر پیش‌فرض‌های کامپایل‌شده و گزینه‌های خوانده‌شده از فایل پیکربندی اولویت دارد. اگر نام یا مقداری شامل فاصله باشد، کل عبارت --option=name=value را داخل علامت نقل‌قول قرار دهید.

-l|--log-basename=logdirectory

نام دایرکتوری پایه برای فایل‌های لاگ/دیباگ. پسوند ".progname" به انتهای آن افزوده خواهد شد (برای مثال log.smbclient، log.smbd و غیره). فایل لاگ هرگز توسط کلاینت حذف نمی‌شود.

--leak-report

فعال‌سازی گزارش نشت حافظه talloc هنگام خروج.

--leak-report-full

فعال‌سازی گزارش کامل نشت حافظه talloc هنگام خروج.

-V|--version

چاپ شماره نسخه برنامه.

-R|--name-resolve=NAME-RESOLVE-ORDER

این گزینه برای تعیین این است که چه سرویس‌های نام‌گذاری و با چه ترتیبی برای تبدیل نام‌های میزبان به آدرس‌های IP استفاده شوند. این گزینه یک رشته فاصله‌گذاری‌شده از گزینه‌های مختلف تفکیک نام را دریافت می‌کند. بهتر است کل عبارت --name-resolve=NAME-RESOLVE-ORDER داخل کوتیشن قرار گیرد.

گزینه‌ها عبارتند از: "lmhosts"، "host"، "wins" و "bcast". آن‌ها باعث تفکیک نام‌ها به شرح زیر می‌شوند:

•lmhosts: جستجوی آدرس IP در فایل lmhosts سامبا. اگر سطر مربوطه در lmhosts هیچ نوع نامی متصل به نام NetBIOS نداشته باشد (برای جزئیات به lmhosts(5) مراجعه کنید)، هر نوع نامی برای جستجو مطابقت داده می‌شود.
•host: انجام تبدیل استاندارد نام میزبان به آدرس IP با استفاده از جستجوهای /etc/hosts، NIS یا DNS سیستم. این روش تفکیک نام وابسته به سیستم‌عامل است؛ برای نمونه در IRIX یا Solaris ممکن است توسط فایل /etc/nsswitch.conf کنترل شود. توجه داشته باشید این روش تنها در صورتی استفاده می‌شود که نوع نام NetBIOS مورد پرس‌وجو از نوع سرور (0x20) باشد، در غیر این صورت نادیده گرفته می‌شود.
•wins: پرس‌وجوی نام با آدرس IP فهرست‌شده در پارامتر wins server. اگر هیچ سرور WINS مشخص نشده باشد، این روش نادیده گرفته خواهد شد.
•bcast: انجام پخش همگانی (Broadcast) روی هر یک از رابط‌های محلی شناخته‌شده که در پارامتر interfaces فهرست شده‌اند. این روش کم‌ترین قابلیت اطمینان را در بین روش‌های تفکیک نام دارد زیرا متکی بر حضور میزبان مقصد در زیرشبکه متصل محلی است.
اگر این پارامتر تنظیم نشود، ترتیب تفکیک نام تعریف‌شده در پارامتر فایل /etc/samba/smb.conf (name resolve order) استفاده خواهد شد.

ترتیب پیش‌فرض lmhosts, host, wins, bcast است. بدون این پارامتر یا هر ورودی دیگری در پارامتر name resolve order از فایل /etc/samba/smb.conf، روش‌های تفکیک نام با همین ترتیب امتحان خواهند شد.

-O|--socket-options=SOCKETOPTIONS

گزینه‌های سوکت TCP برای تنظیم روی سوکت کلاینت. برای فهرست گزینه‌های معتبر به پارامتر socket options در صفحه راهنمای /etc/samba/smb.conf مراجعه کنید.

-m|--max-protocol=MAXPROTOCOL

مقدار این پارامتر (یک رشته) بالاترین سطح پروتکلی است که توسط کلاینت پشتیبانی خواهد شد.

توجه داشته باشید که مشخص کردن این پارامتر در اینجا، پارامتر client max protocol را در فایل /etc/samba/smb.conf بازنویسی خواهد کرد.

-n|--netbiosname=NETBIOSNAME

این گزینه به شما امکان می‌دهد نام NetBIOS را که سامبا برای خود استفاده می‌کند بازنویسی کنید. این عمل معادل تنظیم پارامتر netbios name در فایل /etc/samba/smb.conf است. با این حال، تنظیم خط فرمان بر تنظیمات موجود در /etc/samba/smb.conf اولویت خواهد داشت.

--netbios-scope=SCOPE

این گزینه یک حوزه (Scope) برای NetBIOS مشخص می‌کند که nmblookup هنگام تولید نام‌های NetBIOS برای برقراری ارتباط از آن استفاده خواهد کرد. برای جزئیات در مورد استفاده از حوزه‌های NetBIOS، به rfc1001.txt و rfc1002.txt مراجعه کنید. حوزه‌های NetBIOS بسیار به‌ندرت استفاده می‌شوند؛ این پارامتر را تنها در صورتی تنظیم کنید که مدیر سیستمی باشید که مسئولیت تمام سیستم‌های NetBIOS طرف ارتباط را بر عهده دارد.

-W|--workgroup=WORKGROUP

دامنه SMB نام کاربری را تنظیم می‌کند. این گزینه دامنه پیش‌فرض را که در smb.conf تعریف شده بازنویسی می‌کند. اگر دامنه مشخص‌شده با نام NetBIOS سرور یکسان باشد، باعث می‌شود کلاینت با استفاده از SAM محلی سرور (در برابر Domain SAM) لاگین کند.

توجه داشته باشید که مشخص کردن این پارامتر در اینجا، پارامتر workgroup را در فایل /etc/samba/smb.conf بازنویسی خواهد کرد.

-r|--realm=REALM

تعیین قلمرو (Realm) برای دامنه.

توجه داشته باشید که مشخص کردن این پارامتر در اینجا، پارامتر realm را در فایل /etc/samba/smb.conf بازنویسی خواهد کرد.

-?|--help

چاپ خلاصه‌ای از گزینه‌های خط فرمان.

--usage

نمایش پیام کوتاه نحوه استفاده از دستور.

دستور nmblookup می‌تواند برای پرس‌وجو از یک سرور WINS استفاده شود (به همان روشی که nslookup برای پرس‌وجو از سرورهای DNS به کار می‌رود). برای پرس‌وجو از سرور WINS، nmblookup باید به این صورت فراخوانی شود:

nmblookup -U server -R 'name'

برای نمونه، اجرای:

nmblookup -U samba.org -R 'IRIX#1B'

سرور WINS به نشانی samba.org را برای مرورگر اصلی دامنه (Domain Master Browser، نام از نوع 1B) برای گروه کاری IRIX پرس‌وجو می‌کند.

این صفحه راهنما بخشی از نسخه 4.24.6 مجموعه نرم‌افزاری سامبا است.

nmbd(8)، samba(7) و smb.conf(5).

نرم‌افزار اصلی سامبا و ابزارهای مرتبط توسط Andrew Tridgell ساخته شده‌اند. سامبا اکنون توسط تیم سامبا به عنوان یک پروژه متن‌باز مشابه نحوه توسعه هسته لینوکس توسعه داده می‌شود.

08/16/2026 Samba 4.24.6