<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wikivg.spaghett.dev/index.php?action=history&amp;feed=atom&amp;title=Zh%3ARCON</id>
	<title>Zh:RCON - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wikivg.spaghett.dev/index.php?action=history&amp;feed=atom&amp;title=Zh%3ARCON"/>
	<link rel="alternate" type="text/html" href="https://wikivg.spaghett.dev/index.php?title=Zh:RCON&amp;action=history"/>
	<updated>2026-04-06T02:37:29Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://wikivg.spaghett.dev/index.php?title=Zh:RCON&amp;diff=10398&amp;oldid=prev</id>
		<title>imported&gt;TkTech: TkTech moved page ZH:Rcon to ZH:RCON: Casing matters for the translation plugin to find the right page. Rcon -&gt; RCON</title>
		<link rel="alternate" type="text/html" href="https://wikivg.spaghett.dev/index.php?title=Zh:RCON&amp;diff=10398&amp;oldid=prev"/>
		<updated>2019-09-30T18:38:47Z</updated>

		<summary type="html">&lt;p&gt;TkTech moved page &lt;a href=&quot;/index.php?title=ZH:Rcon&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;ZH:Rcon (page does not exist)&quot;&gt;ZH:Rcon&lt;/a&gt; to &lt;a href=&quot;/index.php?title=ZH:RCON&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;ZH:RCON (page does not exist)&quot;&gt;ZH:RCON&lt;/a&gt;: Casing matters for the translation plugin to find the right page. Rcon -&amp;gt; RCON&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 18:38, 30 September 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>imported&gt;TkTech</name></author>
	</entry>
	<entry>
		<id>https://wikivg.spaghett.dev/index.php?title=Zh:RCON&amp;diff=10397&amp;oldid=prev</id>
		<title>imported&gt;Kaniol: Created page with &quot;&#039;&#039;&#039;RCON&#039;&#039;&#039;是一种允许服务器管理员远程执行{{Minecraft Wiki|zh:命令|Minecraft命令}}的协议。它在1.9-pre4中引入，基本上是Minecraft上一个[http://...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wikivg.spaghett.dev/index.php?title=Zh:RCON&amp;diff=10397&amp;oldid=prev"/>
		<updated>2019-09-30T17:53:51Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;#039;&amp;#039;&amp;#039;RCON&amp;#039;&amp;#039;&amp;#039;是一种允许服务器管理员远程执行{{Minecraft Wiki|zh:命令|Minecraft命令}}的协议。它在1.9-pre4中引入，基本上是Minecraft上一个[http://...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;RCON&amp;#039;&amp;#039;&amp;#039;是一种允许服务器管理员远程执行{{Minecraft Wiki|zh:命令|Minecraft命令}}的协议。它在1.9-pre4中引入，基本上是Minecraft上一个[http://developer.valvesoftware.com/wiki/Source_RCON_Protocol Source RCON协议]的实现。&lt;br /&gt;
&lt;br /&gt;
== 服务端配置 ==&lt;br /&gt;
&lt;br /&gt;
    enable-rcon=true&lt;br /&gt;
    rcon.password=&amp;lt;your password&amp;gt;&lt;br /&gt;
    rcon.port=&amp;lt;1-65535&amp;gt;&lt;br /&gt;
    broadcast-rcon-to-ops=false&lt;br /&gt;
&lt;br /&gt;
默认端口为25575。&lt;br /&gt;
&lt;br /&gt;
== 数据包格式 ==&lt;br /&gt;
&lt;br /&gt;
与[[ZH:协议|Minecraft协议]]相反，整型是小字节序的。&lt;br /&gt;
&lt;br /&gt;
响应将发送回与你发送的相同请求ID。在认证失败时（如你的登录不正确，或者你未登录就尝试发送命令），请求ID则将设为&amp;lt;code&amp;gt;-1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
 |-&lt;br /&gt;
 ! 字段名称&lt;br /&gt;
 ! 字段类型&lt;br /&gt;
 ! 注释&lt;br /&gt;
 |- &lt;br /&gt;
 | Length&lt;br /&gt;
 | int&lt;br /&gt;
 | 包中&amp;#039;&amp;#039;remainder&amp;#039;&amp;#039;的长度&lt;br /&gt;
 |-&lt;br /&gt;
 | Request ID&lt;br /&gt;
 | int&lt;br /&gt;
 | 客户端生成的ID&lt;br /&gt;
 |-&lt;br /&gt;
 | Type&lt;br /&gt;
 | int&lt;br /&gt;
 | &amp;lt;code&amp;gt;3&amp;lt;/code&amp;gt;为登录、&amp;lt;code&amp;gt;2&amp;lt;/code&amp;gt;为运行命令、&amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt;为多个包的响应&lt;br /&gt;
 |-&lt;br /&gt;
 | Payload&lt;br /&gt;
 | byte[]&lt;br /&gt;
 | ASCII文本&lt;br /&gt;
 |-&lt;br /&gt;
 | 2-byte pad&lt;br /&gt;
 | byte, byte&lt;br /&gt;
 | 两个空字节&lt;br /&gt;
 |}&lt;br /&gt;
&lt;br /&gt;
== 数据包 ==&lt;br /&gt;
&lt;br /&gt;
=== 3：登录 === &lt;br /&gt;
&lt;br /&gt;
传出负载：密码。&lt;br /&gt;
&lt;br /&gt;
如果服务器返回具有相同请求ID的数据包，则认证成功（注意：数据包类型是2，而不是3）。如果你获得的请求ID为-1，则认证失败（密码错误）。&lt;br /&gt;
&lt;br /&gt;
=== 2：命令 ===&lt;br /&gt;
&lt;br /&gt;
传出负载应该是要运行的命令，如&amp;lt;code&amp;gt;time set 0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== 0：命令响应 ===&lt;br /&gt;
&lt;br /&gt;
输入的负载是命令输出，尽管许多命令不返回内容，也无法检测未知命令。&lt;br /&gt;
&lt;br /&gt;
命令输出可能会被拆分为多个数据包，每个包含4096个字节（最后一个数据包较少）。每个数据包都包含部分负载（以及两个字节的填充）。发送的最后一个数据包是输出末尾。&lt;br /&gt;
&lt;br /&gt;
== 碎片 ==&lt;br /&gt;
&lt;br /&gt;
最大C-&amp;gt;S数据包负载长度：1446 （总计：1460） - 已过时？&lt;br /&gt;
&lt;br /&gt;
最大S-&amp;gt;C数据包负载长度：4096 （总计：4110）&lt;br /&gt;
&lt;br /&gt;
Minecraft服务端可以在多个数据包件分散响应。并没有简单的方法来知道最后一个响应数据包的接收时间。方法包括：&lt;br /&gt;
&lt;br /&gt;
# 等待至我们接收到负载长度&amp;lt;4096的数据包（不是100％可靠！）&lt;br /&gt;
# 等待&amp;#039;&amp;#039;n&amp;#039;&amp;#039;秒&lt;br /&gt;
# 发送&amp;#039;&amp;#039;两个&amp;#039;&amp;#039;命令包； 第二个命令触发来自服务器的具有相同请求ID的响应，由此我们知道我们已经收到了对第一个命令的完整响应。&lt;br /&gt;
#* 第二个数据包应该使用不会产生碎片输出的命令&lt;br /&gt;
#* 另一种是让第二个C-&amp;gt;S数据包使用无效的类型（例如100）。服务器将使用负载设置为“Unknown request 100”的“Command response”数据包进行响应。&lt;br /&gt;
&lt;br /&gt;
== 示例实现 ==&lt;br /&gt;
&lt;br /&gt;
* https://godoc.org/github.com/Tnze/go-mc/net#RCONConn （Go，客户端和服务端）&lt;br /&gt;
* https://github.com/barneygale/MCRcon （Python，基础，同步）&lt;br /&gt;
* https://github.com/MrReacher/async-mcrcon （Python 3.5+，基础，异步）&lt;br /&gt;
* https://gist.github.com/1292348 （PHP，基础，同步）&lt;br /&gt;
* https://github.com/tehbeard/node-rcon （node.js，基础，异步）&lt;br /&gt;
* https://bitbucket.org/jyc/rcon.js （RingoJS，同步，BSD协议）&lt;br /&gt;
* https://bitbucket.org/jyc/rcon （PHP，同步，BSD协议）&lt;br /&gt;
* https://github.com/A2PLab/minelib （Scala，基础）&lt;br /&gt;
* https://github.com/tiiffi/mcrcon （C，同步，zlib/libpng协议）&lt;br /&gt;
* https://github.com/micvbang/pocketmine-rcon （Go，基础，同步）&lt;br /&gt;
* https://github.com/SommerEngineering/MinecraftServerRCONSharp （.NET/Mono，C#，线程安全）&lt;br /&gt;
* https://github.com/CatCoderr/JRcon （Java，异步，AGPL-3.0协议）&lt;br /&gt;
* https://github.com/coNQP/mcipc （Python 3.6）&lt;br /&gt;
&lt;br /&gt;
[[Category:ZH:Minecraft Modern]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Kaniol</name></author>
	</entry>
</feed>