سادهترین الگوی کاربرد nc الگوی زیر است:
$ nc host port
با اجرای یک دستور با الگوی بالا، nc سعی میکند تا یک اتصال TCP روی پورت و مقصد مشخص شده ایجاد کند. پس از آن ورودی استاندارد شما(stdin) در این کانکشن به سوی مقصد فرستاده شده و هر جوابی که سرور مقصد بدهد را در خروجی استاندارد (stdout) می ریزد. این عملیات همینطور ادامه پیدا میکند تا یکی از طرفین اتصال کانکشن را تخریب کند.دقت کنید که این عملیات با بیشتر برنامهها که با ارسال EOF (نشانگر پایان ورودی که معمولاً با Ctrl+D ارسال می شود) کارشان را تمام میکنند فرق دارد.
Nc یا netcat میتواند با باز کردن یکی از پورت های سیستم و با قبول کردن کانکشن ها روی آن پورت در نقش یک سرور کوچک هم کار کند. پس برای nc چندان فرقی نمیکند که در نقش یک سرور انجام وظیفه کند یا در جایگاه یک کلاینت. این برنامه در هر صورت به یک مقصد اطلاعات ارسال میکند و اگر جوابی وجود داشت آن را دریافت می کند. زمان بسته شدن اتصال هم میتواند طوری تنظیم شود که اگر پس از مدت زمانی اطلاعاتی رد و بدل نشد کانکشن بسته شود.
از nc به عنوان چاقوی سوئیسی TCP/IP نام بردیم اما این برنامه روی پروتکل UDP هم میتواند کار کند. از UDP معمولاً وقتی استقاده میشود که درستی و کامل بودن اطلاعات نسبت به سریع رسیدن اطلاعات ارزش کمتری دارد، مثلاً بازیهای آنلاین معمولاً از این پروتکل استفاده می کنند. شاید بیشتر کار های ما روی TCP باشد اما به هر حال ساپورت این برنامه از UDP یک امتیاز محسوب می شود.
چند مثال:
با جرای دستور زیر میتواند به پورت ۴۲ هاست host.example.com متصل شوید و پورتی که مقصدتان به آن جواب خواهد داد پورت ۳۱۳۳۷ خواهد بود. اگرپنج ثانیه دیتایی رد و بدل نشود اتصال از بین می رود.
$ nc -p 31337 -w 5 host.example.com 42
دستور زیر به مقصد پورت ۵۳ هاست host.example.com یک اتصال UDP ایجاد می کند.
$ nc -u host.example.com 53
دستور زیر یک فایل Unix Domain Socket به آدرس داده شده میسازد و روی آن گوش میکند.
$ nc -lU /var/tmp/dsocket