跳至主要内容

如何使用CLI

如果文件有錯誤或您有建議,請在Mudfish論壇(https://forums.mudfish.net)留言。

我不知道有多少Mudfish用戶會使用這個選單,但使用這個功能的很可能是高階電腦使用者。 :-) 很高興見到你。

以下部分可能包含更多技術術語,因此請仔細閱讀。

CLI簡介​

在第一個Mudfish Launcher創建之前,CLI(Command Line Interface)是debugging的唯一手段,但現在Mudfish的設定主要是透過UI來完成,所以大多數情況不經過CLI。

然而,如果您想分析Mudfish問題並配置甚至最瘋狂的設置,或者查看UI永遠無法知道的內部狀態,目前除了CLI之外沒有其他方法。

連接到 CLI​

要存取CLI,您必須先了解CLI listening IP和port。要獲取此信息

  • 您必須先登入 Mudfish。

  • 轉到“狀態→進程”選單。在那裡您會找到一個名為“日誌資訊”的部分。此日誌資訊由mudfish.exe 輸出,包含從程式首次啟動到現在的訊息。

  • 如果查看日誌頂部,則有 [INFO] Listening the mangement console... 的行是 CLI IP/PORT 資訊。 IP 始終設定為本地網絡,如 127.0.0.1,port 變為 OS auto-assigning。

現在,您可以透過命令提示字元視窗中的 telnet 命令連線到 IP/PORT。例如寫為127.0.0.1:35323,則可以如下連接。

   C:\> telnet 127.0.0.1 35323

-----------------------------
MUDFISH CLI v2.0.8
-----------------------------

Type 'help' for command list.
Type 'quit' to close CLI session.

CLI指令​

目前,即使 CLI 命令中的小錯誤也可能觸發斷言失敗,導致 Mudfish 結束。這項功能主要面向開發者編寫。

Mudfish Core程式是基於FreeBSD TCP/IP stack和network framework編寫的程式。 (我最熟悉的是FreeBSD...哈哈...)所以,CLI提供的所有指令幾乎與FreeBSD提供的指令功能相似。當然使用方法也是類似的。

如果您連線到 CLI,請嘗試執行 help 指令。您可以查看目前支援的命令清單。

   help
arp Address resolution display and control
connect Test a connection to the remote
help Show this help message
ifconfig Configure network interface parameters
netstat Show network status
ping send ICMP ECHO_REQUEST packets to network hosts
route Manually manipulate the routing tables
quit Exit CLI interface
sysctl Get or set kernel state

如果您需要每個命令的完整解釋,可以在此連結 中搜尋。除 connect 指令外,其操作必須與 FreeBSD 8.0 RELEASE 相同。

connect 指令​

   connect
usage: connect ip port

connect 68.180.206.184 80
connection was good (RTT 0.156 secs)

此指令嘗試透過 Mudfish 虛擬介面(re(4) 或 msk(4))連接到 TCP connect(2)。目的是為了調試確定是否可以透過Mudfish 連接到IP 和PORT。

如果連線失敗,則顯示錯誤或Timeout訊息,如果成功,則一起輸出預期的RTT值。