Mudcat
পরিচিতি
Mudfish Networks প্রদত্ত HTTP/TCP/UDP পোর্ট শেয়ারিং সেবা। https://ngrok.io-এর মতো একই উদ্দেশ্যে সেবা প্রদান করাই এর লক্ষ্য।
এই সেবা ব্যবহার করে আপনি সহজেই অভ্যন্তরীণ নেটওয়ার্কের (ইন্টারনাল নেটওয়ার্ক) কোনো সার্ভিসকে বাইরের নেটওয়ার্কে শেয়ার করতে পারেন। বর্তমানে নিচের প্রোটোকলগুলো সমর্থিত:
-
HTTP
-
TCP
-
UDP
একটি কমান্ড ব্যবহার করেই এটি সহজে ইনস্টল ও ব্যবহার করা যায়।
ডাউনলোড
https://www.mudcat.io/ থেকে প্রোগ্রামটি ডাউনলোড করতে পারেন।
ব্যবহারকারীর দৃষ্টিকোণ থেকে mudcat প্রোগ্রামটি একটি মাত্র এক্সিকিউটেবল ফাইল নিয়ে গঠিত, ফলে এটি সহজেই ডাউনলোড এবং রান করা যায়।
mudcat রান অপশন
mudcat প্রোগ্রামটি চালালে নিচের মতো স্ক্রিন দেখতে পাবেন। মূলত mudcat প্রতিটি কমান্ডের ওপর ভিত্তি করে কিছুটা ভিন্নভাবে কাজ করে।
$ ./mudcat
Usage: mudcat [-vV] <command> [<args>]
Options:
-v # Increase the verbose level.
-V, --version # Show the version.
Commands:
http # Create a HTTP tunnel.
node # Show the mudcat nodes.
tcp # Create a TCP tunnel.
udp # Create a UDP tunnel.
বর্তমানে সমর্থিত কমান্ডগুলো নিম্নরূপ:
-
http
HTTP পোর্ট ফরওয়ার্ড করতে এটি ব্যবহার করা যায়।
-
node
ফরওয়ার্ডিংয়ে ব্যবহারের জন্য mudcat রিলে সার্ভারগুলোর তথ্য দেখায়।
-
tcp
TCP পোর্ট ফরওয়ার্ড করতে এটি ব্যবহার করা যায়।
-
UDP
UDP পোর্ট ফরওয়ার্ড করতে এটি ব্যবহার করা যায়।
সাধারণত ./mudcat <command> -h চালালে সংশ্লিষ্ট কমান্ডের আরও বিস্তারিত হেল্প বা সহায়তা তথ্য দেখতে পাবেন।
mudcat http কমান্ড
এই কমান্ডটি HTTP ফরওয়ার্ডিং সেবা দেওয়ার জন্য ব্যবহার করা যায়। সাধারণত ইন্টারনাল নেটওয়ার্কে তৈরি কোনো সার্ভিসকে সহজভাবে বাইরে উন্মুক্ত করার জন্য এই কমান্ডটি ব্যবহার করা হয়।
$ ./mudcat http -h
Usage: mudcat http [options]
--domain <domain> # Specify the domain name to access.
--local-addr <ip> # Specify the local IP to connect. Default
# value is 127.0.0.1
--local-port <port> # Specify the local port. Default value is 80.
--node-cc <cc> # Specify the country code to hint the
# selection of mudcat nodes.
--node-id <nid> # Specify the unique ID of mudcat node.
সমর্থিত সাব-অপশনগুলো নিচে দেওয়া হলো:
-
--domain <domain>এই অপশনটি ব্যবহার করলে এলোমেলো কোনো ডোমেইন ঠিকানার (সাধারণত সংখ্যা দিয়ে গঠিত ঠিকানা) পরিবর্তে ব্যবহারকারী নিজেই সরাসরি একটি ডোমেইন নির্ধারণ করতে পারেন। উদাহরণস্বরূপ,
--domain abcউল্লেখ করলে বরাদ্দকৃত ডোমেইন ঠিকানা হবেabc.mudcat.io। -
--local-addr <ip>এই অপশনটি যে লোকাল ঠিকানায় (IPv4) HTTP ফরওয়ার্ড করতে চান তা নির্ধারণ করে। ডিফল্ট মান হলো 127.0.0.1।
তবে এই মানটি কেবল অভ্যন্তরীণ নেটওয়ার্কের ঠিকানাই হতে হবে এমন কোনো বাধ্যবাধকতা নেই। দূরবর্তী অন্য কোনো পাবলিক IP নির্দেশ করতে চাইলে সেই IP-ও নির্ধারণ করতে পারেন।
-
--local-port <port>HTTP ফরওয়ার্ড করতে চাওয়া লোকাল পোর্ট নির্ধারণ করে। ডিফল্ট মান হলো 80।
-
--node-cc <cc>যে mudcat রিলে সার্ভারটি ব্যবহার করতে চান তার কান্ট্রি কোড নির্ধারণ করতে পারেন। উদাহরণস্বরূপ, কান্ট্রি কোড
JPদিলে জাপানে থাকা mudcat রিলে সার্ভার স্বয়ংক্রিয়ভাবে বরাদ্দ করা হবে। -
--node-id <nid>ব্যবহার করতে চাওয়া mudcat রিলে সার্ভারের ইউনিক ID নির্ধারণ করতে পারেন। প্রতিটি রিলে সার্ভারের ইউনিক ID
mudcat nodeকমান্ডের মাধ্যমে পাওয়া যায়।
mudcat node কমান্ড
এই কমান্ডটি mudcat রিলে সার্ভারগুলোর তথ্য আনতে ব্যবহৃত হয়।
$ ./mudcat node -h
Usage: mudcat node [--json-raw]
--json-raw # Prints the raw JSON output.
./mudcat node কমান্ডটি চালালে বর্তমানে চালু থাকা mudcat রিলে সার্ভারগুলোর তালিকা দেখতে পাবেন। সমর্থিত সাব-অপশন নিম্নরূপ:
-
--json-rawরিলে সার্ভারের তালিকা JSON ফরম্যাটে প্রদর্শন করে।
mudcat tcp কমান্ড
এই কমান্ডটি TCP ফরওয়ার্ডিং সেবা দিতে ব্যবহার করা যায়।
$ ./mudcat tcp -h
Usage: mudcat tcp [options]
--conn-uuid <uuid> # Set the connection UUID to reuse.
--domain <domain> # Specify the domain name to access.
--local-addr <ip> # Specify the local IP to connect. Default
# value is 127.0.0.1
--local-port <port> # Specify the local port. If not specified,
# --remote-port value will be used.
--node-cc <cc> # Specify the country code to hint the
# selection of mudcat nodes.
--node-id <nid> # Specify the unique ID of mudcat node.
--remote-port <port> # Specify the remote port.
সমর্থিত সাব-অপশনগুলো নিচে দেওয়া হলো:
-
--conn-uuid <uuid>আগে ব্যবহৃত রিমোট পোর্ট পুনরায় ব্যবহার করার ক্ষেত্রে এই অপশনটি ব্যবহার করা যায়।
সাধারণত বরাদ্দকৃত রিমোট পোর্ট ব্যবহারের পর সংযোগ বিচ্ছিন্ন করলে, সেই রিমোট পোর্টের রিসোর্স মুক্ত না হওয়া পর্যন্ত তা পুনরায় ব্যবহার করা যায় না।
তবে পূর্ববর্তী Connection UUID জানা থাকলে সেই রিমোট পোর্টটি তাৎক্ষণিকভাবে পুনরায় ব্যবহার করা সম্ভব।
-
--domain <domain>এই অপশনটি উল্লেখ করলে এলোমেলো কোনো ডোমেইন ঠিকানার (সাধারণত সংখ্যা দিয়ে গঠিত ঠিকানা) পরিবর্তে ব্যবহারকারী নিজেই সরাসরি একটি ডোমেইন নির্ধারণ করতে পারেন। উদাহরণস্বরূপ,
--domain abcউল্লেখ করলে বরাদ্দকৃত ডোমেইন ঠিকানা হবেabc.mudcat.io। -
--local-addr <ip>এই অপশনটি যে লোকাল ঠিকানায় (IPv4) TCP ফরওয়ার্ড করতে চান তা নির্ধারণ করে। ডিফল্ট মান হলো 127.0.0.1।
তবে এই মানটি কেবল অভ্যন্তরীণ নেটওয়ার্কের ঠিকানাই হতে হবে এমন কোনো বাধ্যবাধকতা নেই। দূরবর্তী অন্য কোনো পাবলিক IP নির্দেশ করতে চাইলে সেই IP-ও নির্ধারণ করতে পারেন।
-
--local-port <port>TCP ফরওয়ার্ড করতে চাওয়া লোকাল পোর্ট নির্ধারণ করে। এই অপশনটি দেওয়া না থাকলে
--remote-port <port>-এর মানটি পোর্ট তথ্য হিসেবে ব্যবহৃত হবে। -
--node-cc <cc>ব্যবহার করতে চাওয়া mudcat রিলে সার্ভারের কান্ট্রি কোড নির্ধারণ করতে পারেন। উদাহরণস্বরূপ, কান্ট্রি কোড
JPদিলে জাপানে থাকা mudcat রিলে সার্ভার স্বয়ংক্রিয়ভাবে বরাদ্দ করা হবে। -
--node-id <nid>ব্যবহার করতে চাওয়া mudcat রিলে সার্ভারের ইউনিক ID নির্ধারণ করতে পারেন। প্রতিটি রিলে সার্ভারের ইউনিক ID
mudcat nodeকমান্ডের মাধ্যমে পাওয়া যায়। -
--remote-port <port>mudcat রিলে সার্ভারে যে TCP পোর্টে লিসেন (listening) করবে তা নির্ধারণ করে।
mudcat udp কমান্ড
এই কমান্ডটি UDP ফরওয়ার্ডিং সেবা দিতে ব্যবহার করা যায়।
$ ./mudcat udp -h
Usage: mudcat udp [options]
--conn-uuid <uuid> # Set the connection UUID to reuse.
--domain <domain> # Specify the domain name to access.
--local-addr <ip> # Specify the local IP to connect. Default
# value is 127.0.0.1
--local-port <port> # Specify the local port. If not specified,
# --remote-port value will be used.
--node-cc <cc> # Specify the country code to hint the
# selection of mudcat nodes.
--node-id <nid> # Specify the unique ID of mudcat node.
--remote-port <port> # Specify the remote port.
সমর্থিত সাব-অপশনগুলো নিচে দেওয়া হলো:
-
--conn-uuid <uuid>আগে ব্যবহৃত রিমোট পোর্ট পুনরায় ব্যবহার করার ক্ষেত্রে এই অপশনটি ব্যবহার করা যায়।
সাধারণত বরাদ্দকৃত রিমোট পোর্ট ব্যবহারের পর সংযোগ বিচ্ছিন্ন করলে, সেই রিমোট পোর্টের রিসোর্স মুক্ত না হওয়া পর্যন্ত তা পুনরায় ব্যবহার করা যায় না।
তবে পূর্ববর্তী Connection UUID জানা থাকলে সেই রিমোট পোর্টটি তাৎক্ষণিকভাবে পুনরায় ব্যবহার করা সম্ভব।
-
--domain <domain>এই অপশনটি উল্লেখ করলে এলোমেলো কোনো ডোমেইন ঠিকানার (সাধারণত সংখ্যা দিয়ে গঠিত ঠিকানা) পরিবর্তে ব্যবহারকারী নিজেই সরাসরি একটি ডোমেইন নির্ধারণ করতে পারেন। উদাহরণস্বরূপ,
--domain abcউল্লেখ করলে বরাদ্দকৃত ডোমেইন ঠিকানা হবেabc.mudcat.io। -
--local-addr <ip>এই অপশনটি যে লোকাল ঠিকানায় (IPv4) UDP ফরওয়ার্ড করতে চান তা নির্ধারণ করে। ডিফল্ট মান হলো 127.0.0.1।
তবে এই মানটি কেবল অভ্যন্তরীণ নেটওয়ার্কের ঠিকানাই হতে হবে এমন কোনো বাধ্যবাধকতা নেই। দূরবর্তী অন্য কোনো পাবলিক IP নির্দেশ করতে চাইলে সেই IP-ও নির্ধারণ করতে পারেন।
-
--local-port <port>UDP ফরওয়ার্ড করতে চাওয়া লোকাল পোর্ট নির্ধারণ করে। এই অপশনটি দেওয়া না থাকলে
--remote-port <port>-এর মানটি পোর্ট তথ্য হিসেবে ব্যবহৃত হবে। -
--node-cc <cc>ব্যবহার করতে চাওয়া mudcat রিলে সার্ভারের কান্ট্রি কোড নির্ধারণ করতে পারেন। উদাহরণস্বরূপ, কান্ট্রি কোড
JPদিলে জাপানে থাকা mudcat রিলে সার্ভার স্বয়ংক্রিয়ভাবে বরাদ্দ করা হবে। -
--node-id <nid>ব্যবহার করতে চাওয়া mudcat রিলে সার্ভারের ইউনিক ID নির্ধারণ করতে পারেন। প্রতিটি রিলে সার্ভারের ইউনিক ID
mudcat nodeকমান্ডের মাধ্যমে পাওয়া যায়। -
--remote-port <port>mudcat রিলে সার্ভারে যে UDP পোর্টে লিসেন (listening) করবে তা নির্ধারণ করে।
রিলিজ নোট
2025-10-16 বা তার পরের এই সময়সীমায় কোনো রিলিজ নোট নেই।
আগের পরিবর্তনের জন্য সম্পূর্ণ কোরিয়ান ইতিহাস দেখুন।