Mudcat (mudcat)
บทนำ
บริการแชร์พอร์ต HTTP/TCP/UDP จาก Mudfish Networks มีเป้าหมายให้บริการสำหรับวัตถุประสงค์คล้ายกับ https://ngrok.io
บริการนี้ช่วยให้แชร์บริการในเครือข่ายภายในออกสู่ภายนอกได้ง่าย ปัจจุบันรองรับโปรโตคอลดังต่อไปนี้
-
HTTP
-
TCP
-
UDP
ติดตั้งและใช้งานได้ง่ายด้วยคำสั่งเดียว
ดาวน์โหลด
ดาวน์โหลดโปรแกรมได้จาก https://www.mudcat.io/
สำหรับผู้ใช้ โปรแกรม mudcat มีเพียงไฟล์เรียกทำงาน 1 ไฟล์ จึงดาวน์โหลดและเรียกใช้งานได้ง่าย
ตัวเลือกการทำงานของ 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
อย่างไรก็ตาม ค่านี้ไม่จำเป็นต้องเป็นที่อยู่ในเครือข่ายภายใน หากต้องการชี้ไปยัง Public IP อื่นที่อยู่ระยะไกล สามารถระบุ IP นั้นได้
-
--local-port <port>กำหนดพอร์ตภายในเครื่องที่ต้องการส่งต่อ HTTP ค่าเริ่มต้นคือ 80
-
--node-cc <cc>กำหนดรหัสประเทศของเซิร์ฟเวอร์รีเลย์ mudcat ที่ต้องการใช้ได้ เช่น หากกำหนดรหัสประเทศเป็น
JPระบบจะจัดสรรเซิร์ฟเวอร์รีเลย์ mudcat ในญี่ปุ่นให้อัตโนมัติ -
--node-id <nid>กำหนด unique ID ของเซิร์ฟเวอร์รีเลย์ mudcat ที่ต้องการใช้ได้ ดู unique 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>ใช้ตัวเลือกนี้เมื่อต้องการใช้ remote port เดิมซ้ำ
โดยทั่วไป เมื่อใช้ remote port ที่จัดสรรให้แล้วตัดการเชื่อมต่อ จะใช้พอร์ตนั้นอีกไม่ได้จนกว่าจะปล่อยทรัพยากรของพอร์ต
แต่หากทราบ Connection UUID เดิม สามารถใช้ remote port นั้นซ้ำได้ทันที
-
--domain <domain>ตัวเลือกนี้ให้ผู้ใช้กำหนดโดเมนเองแทนที่อยู่โดเมนแบบสุ่ม (โดยทั่วไปเป็นตัวเลข) เช่น หากกำหนดเป็น
--domain abcจะได้รับที่อยู่โดเมนabc.mudcat.io -
--local-addr <ip>ตัวเลือกนี้กำหนดที่อยู่ภายในเครื่อง (IPv4) ที่ต้องการส่งต่อ TCP ค่าเริ่มต้นคือ 127.0.0.1
อย่างไรก็ตาม ค่านี้ไม่จำเป็นต้องเป็นที่อยู่ในเครือข่ายภายใน หากต้องการชี้ไปยัง Public IP อื่นที่อยู่ระยะไกล สามารถระบุ IP นั้นได้
-
--local-port <port>กำหนดพอร์ตภายในเครื่องที่ต้องการส่งต่อ TCP หากไม่ระบุตัวเลือกนี้ จะใช้ค่า
--remote-port <port>เป็นพอร์ต -
--node-cc <cc>กำหนดรหัสประเทศของเซิร์ฟเวอร์รีเลย์ mudcat ที่ต้องการใช้ได้ เช่น หากกำหนดรหัสประเทศเป็น
JPระบบจะจัดสรรเซิร์ฟเวอร์รีเลย์ mudcat ในญี่ปุ่นให้อัตโนมัติ -
--node-id <nid>กำหนด unique ID ของเซิร์ฟเวอร์รีเลย์ mudcat ที่ต้องการใช้ได้ ดู unique ID ของแต่ละเซิร์ฟเวอร์ได้ด้วยคำสั่ง
mudcat node -
--remote-port <port>กำหนดพอร์ต TCP ที่เซิร์ฟเวอร์รีเลย์ mudcat จะรับฟัง