Перейти к основному содержимому

Работа с CLI

Если вы нашли ошибку в документе или хотите предложить улучшение, оставьте сообщение на форуме Mudfish (https://forums.mudfish.net).

Не знаем, скольким пользователям понадобится это меню, но если вы его используете, то, вероятно, хорошо разбираетесь в компьютерах. :-) Рады знакомству.

В следующих разделах много специальных терминов, поэтому читайте внимательно.

Знакомство с CLI​

До появления Mudfish Launcher интерфейс командной строки был единственным средством отладки. Сейчас большинство настроек выполняется через графический интерфейс, поэтому CLI используется реже.

Однако для анализа проблем, тонкой настройки и просмотра внутренних состояний, недоступных в обычном интерфейсе, CLI пока остаётся единственным способом.

Подключение к CLI​

Сначала нужно узнать IP-адрес и порт, которые прослушивает CLI. Для этого:

  • Войдите в Mudfish.

  • Откройте «Состояние → Процессы» и найдите раздел журнала. В нём находятся сообщения mudfish.exe с момента запуска до текущего времени.

  • В начале журнала найдите строку «[INFO] Listening the mangement console...». В ней указаны IP-адрес и порт CLI. Адрес всегда локальный — 127.0.0.1, а порт назначается операционной системой автоматически.

Подключитесь к этому адресу и порту командой telnet из командной строки. Например, для 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 может вызвать сбой assertion и завершение Mudfish. Разработчик создавал этот интерфейс исключительно для удобства разработчиков…

Mudfish Core основан на стеке TCP/IP и сетевой инфраструктуре FreeBSD, поскольку именно с 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)

Эта команда пытается установить TCP-соединение connect(2) через виртуальные интерфейсы Mudfish re(4) или msk(4). Она предназначена для отладки: позволяет проверить доступность заданного IP-адреса и порта через Mudfish.

При неудаче выводится ошибка или сообщение о тайм-ауте, а при успехе — ожидаемый RTT.