sanctuary

Connection Banner:

logind.c's logon() execting... ˍˍˍ 聖 殿 英 雄 傳 說 ˍˍˍ The Hero Legends of Sanctuary 重生篇:∼炎與新生 攜手共創嶄新的未來∼ 創站者 - Int(1995,7) 管理群 - Nobu、Laechan(代)、Norr、Justinj Plan、Highelf、Quest、Blue、Cnas ◢ ▂▃▔ ◢█◤ █ 仗劍江湖 幾番際遇成追憶 ▄▅▆█▆▅▄▄▄▄▄█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ▇▅▃ ▃▅▇▇▇▇▇▇▇▇▇▇▇單騎沙場 多少傳奇總是詩 ◥█◣ █ ◥█▇▆▂ 聖殿英雄傳說BBS: PTT 的 mud_sanc 板 本站IP位址: telnet://sanc.game.tw:4002 (网4: http://ppt.cc/varM) 中?玩家可使用 pietty 等同J支持橧c字体的T机Y件(T机模式u Telnet) Pietty 下^地址: https://sites.google.com/view/pietty-project 新的一年,【聖殿英雄傳說】祝各位身體安康,事事如意 ^_^ 人數/上限[181/∞],你想用哪個名字?(新角色請按 new): 《你必須輸入你要進入的名字!》 人數上限[240],你想用哪個名字?(新角色請按 new):

Server URLs

Server Info

  • Players online: 181 [1]

  • Uptime: 5 days

  • Server Location: 🇹🇼 Taiwan (GeoIP)

  • Encoding: big5

    This server uses a legacy encoding:

    telnetlib3-client --encoding big5 --force-binary sanc.game.tw 4002

Protocol Support

MUD-specific protocols detected via MSSP flags or Telnet negotiation.

  • MSSP: Yes (MSSP)

  • GMCP: Negotiated

  • MSDP: No

  • MCCP: No

  • MCCP2: No

  • MXP: Negotiated

  • MSP: No

  • MCP: No

  • ZMP: Negotiated

Telnet Fingerprint

f9b3f33571e02f38

This fingerprint is shared by 11 other servers.

Options offered by server: ECHO, GMCP, MSSP, SGA, ZMP

Options requested from client: LINEMODE, MXP, NAWS, NEW_ENVIRON, SGA, TTYPE

The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.

Show JSON
{
  "server-probe": {
    "fingerprint": "f9b3f33571e02f38",
    "fingerprint-data": {
      "offered-options": [
        "ECHO",
        "GMCP",
        "MSSP",
        "SGA",
        "ZMP"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "EOR",
        "MSDP",
        "MSP",
        "MXP",
        "STATUS"
      ],
      "requested-options": [
        "LINEMODE",
        "MXP",
        "NAWS",
        "NEW_ENVIRON",
        "SGA",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "\u001b[1;31m\r\n\u300a\u4f60\u5fc5\u9808\u8f38\u5165\u4f60\u8981\u9032\u5165\u7684\u540d\u5b57\uff01\u300b\r\n\r\n\u001b[0m\r\n\u4eba\u6578\u4e0a\u9650[240]\uff0c\u4f60\u60f3\u7528\u54ea\u500b\u540d\u5b57\uff1f(\u65b0\u89d2\u8272\u8acb\u6309 new)\uff1a",
      "banner_before_return": "logind.c's logon() execting...\u001b[1;35m\r\n\r\n\t\t\u3000\u3000 \u02cd\u02cd\u02cd \u001b[36m\u8056 \u6bbf \u001b[33m\u82f1 \u96c4 \u001b[36m\u50b3 \u8aaa\u001b[33m \u001b[35m\u02cd\u02cd\u02cd\r\n\r\n\t\u001b[0;36m\uff34\uff48\uff45\u3000\uff28\uff45\uff52\uff4f\u3000\uff2c\uff45\uff47\uff45\uff4e\uff44\uff53\u3000\uff4f\uff46\u3000\uff33\uff41\uff4e\uff43\uff54\uff55\uff41\uff52\uff59\r\n\r\n\t\t\u001b[1;37m \u91cd\u751f\u7bc7\uff1a\u223c\u708e\u8207\u65b0\u751f  \u651c\u624b\u5171\u5275\u5d84\u65b0\u7684\u672a\u4f86\u223c\u001b[1;34m\r\n\r\n\t\t\t \u5275\u7ad9\u8005 - Int(1995,7)\r\n \t   \u7ba1\u7406\u7fa4 - Nobu\u3001Laechan(\u4ee3)\u3001Norr\u3001Justinj\r\n\t            Plan\u3001Highelf\u3001Quest\u3001Blue\u3001Cnas\r\n\u001b[0m\r\n          \u25e2\u001b[7m  \u2582\u2583\u001b[0m\u2594\r\n       \u25e2\u2588\u25e4         \u2588       \u4ed7\u528d\u6c5f\u6e56  \u5e7e\u756a\u969b\u9047\u6210\u8ffd\u61b6\r\n \u2584\u2585\u2586\u2588\u2586\u2585\u2584\u2584\u2584\u2584\u2584\u2588\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\r\n \u001b[7m\u2587\u2585\u2583  \u2583\u2585\u2587\u2587\u2587\u2587\u2587\u001b[0m\u2587\u001b[7m\u2587\u2587\u2587\u2587\u2587\u001b[0m\u55ae\u9a0e\u6c99\u5834  \u591a\u5c11\u50b3\u5947\u7e3d\u662f\u8a69\r\n       \u25e5\u2588\u25e3         \u2588\r\n          \u25e5\u2588\u2587\u2586\u2582     \u001b[1;36;4m\u8056\u6bbf\u82f1\u96c4\u50b3\u8aaa\uff22\uff22\uff33: PTT \u7684 mud_sanc \u677f\u001b[0m\r\n\r\n\u672c\u7ad9IP\u4f4d\u5740: telnet://sanc.game.tw:4002  (\u7f514: http://ppt.cc/varM)\r\n\u4e2d?\u73a9\u5bb6\u53ef\u4f7f\u7528 pietty \u7b49\u540cJ\u652f\u6301\udc8a\u6a67c\u5b57\u4f53\u7684\udc8aT\u673aY\u4ef6(\udc8aT\u673a\u6a21\u5f0f\udc89u Telnet)\r\nPietty \u4e0b\udc86^\u5730\u5740: https://sites.google.com/view/pietty-project\r\n\r\n\u001b[1;31m\u65b0\u7684\u4e00\u5e74\uff0c\u3010\u8056\u6bbf\u82f1\u96c4\u50b3\u8aaa\u3011\u795d\u5404\u4f4d\u8eab\u9ad4\u5b89\u5eb7\uff0c\u4e8b\u4e8b\u5982\u610f ^_^\u001b[0m\r\n\u001b[1;37m\u4eba\u6578/\u4e0a\u9650[\u001b[32m181/\u221e\u001b[37m],\u001b[0;36m\u4f60\u60f3\u7528\u54ea\u500b\u540d\u5b57?(\u65b0\u89d2\u8272\u8acb\u6309 \u001b[1mnew\u001b[0;36m)\u001b[0m: ",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "big5",
      "mssp": {
        "NAME": "sanctuary",
        "PLAYERS": "181",
        "UPTIME": "1770639320"
      },
      "option_states": {
        "environ_requested": [
          {
            "name": "*",
            "type": "VAR"
          },
          {
            "name": "*",
            "type": "USERVAR"
          }
        ],
        "server_offered": {
          "0x56": false,
          "GMCP": true,
          "MSSP": true,
          "ZMP": true
        },
        "server_requested": {
          "LINEMODE": true,
          "MXP": true,
          "NAWS": true,
          "NEW_ENVIRON": true,
          "SGA": true,
          "TTYPE": true
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.5151863098144531,
        "total": 5.319323539733887
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-02-14T17:11:45.316898+00:00",
      "host": "sanc.game.tw",
      "ip": "114.33.120.231",
      "port": 4002
    }
  ]
}

Connection Log

Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.

Generated by telnetlib3-fingerprint

telnetlib3-fingerprint --loglevel=debug sanc.game.tw 4002
Show Logfile
DEBUG client.py:965 Fingerprint client: host=sanc.game.tw port=4002
INFO client_base.py:175 Connected to <Peer 114.33.120.231 4002>
DEBUG client_base.py:492 negotiation complete after 0.00s.
DEBUG stream_writer.py:707 recv IAC DO LINEMODE
DEBUG stream_writer.py:1770 handle_do(LINEMODE)
DEBUG stream_writer.py:3174 pending_option[WILL + LINEMODE] = True
DEBUG stream_writer.py:950 send IAC WILL LINEMODE
DEBUG stream_writer.py:3174 pending_option[SB + LINEMODE] = True
DEBUG stream_writer.py:3174 local_option[LINEMODE] = True
DEBUG stream_writer.py:3174 pending_option[WILL + LINEMODE] = False
DEBUG stream_writer.py:699 begin sub-negotiation SB LINEMODE
DEBUG stream_writer.py:686 sub-negotiation cmd LINEMODE SE completion byte
DEBUG stream_writer.py:3174 pending_option[SB + LINEMODE] = False
DEBUG stream_writer.py:2544 recv IAC SB LINEMODE LINEMODE-MODE b'\x03' IAC SE
DEBUG stream_writer.py:1277 set Linemode <b'\x07': lit_echo:False, soft_tab:False, ack:True, trapsig:True, remote:False,
    local:True>
DEBUG stream_writer.py:1280 send IAC SB LINEMODE LINEMODE-MODE <b'\x07': lit_echo:False, soft_tab:False, ack:True, trapsig:True,
    remote:False, local:True> IAC SE
DEBUG stream_writer.py:707 recv IAC DO SGA
DEBUG stream_writer.py:1770 handle_do(SGA)
DEBUG stream_writer.py:3174 pending_option[WILL + SGA] = True
DEBUG stream_writer.py:950 send IAC WILL SGA
DEBUG stream_writer.py:3174 local_option[SGA] = True
DEBUG stream_writer.py:3174 pending_option[WILL + SGA] = False
DEBUG stream_writer.py:707 recv IAC DO TTYPE
DEBUG stream_writer.py:1770 handle_do(TTYPE)
DEBUG stream_writer.py:3174 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:950 send IAC WILL TTYPE
DEBUG stream_writer.py:3174 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3174 local_option[TTYPE] = True
DEBUG stream_writer.py:3174 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:707 recv IAC DO NAWS
DEBUG stream_writer.py:1770 handle_do(NAWS)
DEBUG stream_writer.py:3174 pending_option[WILL + NAWS] = True
DEBUG stream_writer.py:950 send IAC WILL NAWS
DEBUG stream_writer.py:2346 send IAC SB NAWS (rows=25, cols=80) IAC SE
DEBUG stream_writer.py:3174 local_option[NAWS] = True
DEBUG stream_writer.py:3174 pending_option[WILL + NAWS] = False
DEBUG stream_writer.py:707 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1770 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3174 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:950 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3174 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3174 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3174 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:707 recv IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:723 WILL MCCP2_COMPRESS unsolicited
DEBUG stream_writer.py:1900 handle_will(MCCP2_COMPRESS)
DEBUG stream_writer.py:3174 remote_option[MCCP2_COMPRESS] = False
DEBUG stream_writer.py:950 send IAC DONT MCCP2_COMPRESS
WARNING stream_writer.py:2008 Unhandled: WILL MCCP2_COMPRESS.
DEBUG stream_writer.py:707 recv IAC DO MXP
DEBUG stream_writer.py:1770 handle_do(MXP)
DEBUG stream_writer.py:3174 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:950 send IAC WILL MXP
DEBUG stream_writer.py:3174 pending_option[SB + MXP] = True
DEBUG stream_writer.py:3174 local_option[MXP] = True
DEBUG stream_writer.py:3174 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:707 recv IAC WILL MSSP
DEBUG stream_writer.py:723 WILL MSSP unsolicited
DEBUG stream_writer.py:1900 handle_will(MSSP)
DEBUG stream_writer.py:3174 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:950 send IAC DO MSSP
DEBUG stream_writer.py:3174 remote_option[MSSP] = True
DEBUG stream_writer.py:3174 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:707 recv IAC WILL ZMP
DEBUG stream_writer.py:723 WILL ZMP unsolicited
DEBUG stream_writer.py:1900 handle_will(ZMP)
DEBUG stream_writer.py:3174 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:950 send IAC DO ZMP
DEBUG stream_writer.py:3174 remote_option[ZMP] = True
DEBUG stream_writer.py:3174 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:707 recv IAC WILL GMCP
DEBUG stream_writer.py:723 WILL GMCP unsolicited
DEBUG stream_writer.py:1900 handle_will(GMCP)
DEBUG stream_writer.py:3174 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:950 send IAC DO GMCP
DEBUG stream_writer.py:3174 remote_option[GMCP] = True
DEBUG stream_writer.py:3174 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:699 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:686 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3174 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2241 recv TTYPE SEND: b''
DEBUG stream_writer.py:2254 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:699 begin sub-negotiation SB NEW_ENVIRON
DEBUG stream_writer.py:686 sub-negotiation cmd NEW_ENVIRON SE completion byte
DEBUG stream_writer.py:3174 pending_option[SB + NEW_ENVIRON] = False
DEBUG stream_writer.py:2289 recv NEW_ENVIRON SEND (all)
DEBUG stream_writer.py:2312 env send: LANG='C', TERM='xterm-256color', LINES=25, COLUMNS=80, COLORTERM=''
DEBUG stream_writer.py:699 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:686 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2065 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1673 MSSP: {'NAME': 'sanctuary', 'PLAYERS': '181', 'UPTIME': '1770639320'}
DEBUG stream_writer.py:1323 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:3174 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:950 send IAC DO BINARY
DEBUG stream_writer.py:3174 pending_option[DO + SGA] = True
DEBUG stream_writer.py:950 send IAC DO SGA
DEBUG stream_writer.py:3174 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:950 send IAC DO ECHO
DEBUG stream_writer.py:3174 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:950 send IAC DO STATUS
DEBUG stream_writer.py:3174 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:950 send IAC DO CHARSET
DEBUG stream_writer.py:3174 pending_option[DO + EOR] = True
DEBUG stream_writer.py:950 send IAC DO EOR
DEBUG stream_writer.py:3174 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:950 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:3174 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:950 send IAC DO MSDP
DEBUG stream_writer.py:3174 pending_option[DO + MSP] = True
DEBUG stream_writer.py:950 send IAC DO MSP
DEBUG stream_writer.py:3174 pending_option[DO + MXP] = True
DEBUG stream_writer.py:950 send IAC DO MXP
DEBUG stream_writer.py:3174 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:950 send IAC DO AARDWOLF
DEBUG stream_writer.py:3174 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:950 send IAC DO ATCP
DEBUG stream_writer.py:707 recv IAC WONT BINARY
DEBUG stream_writer.py:2025 handle_wont(BINARY)
DEBUG stream_writer.py:3174 remote_option[BINARY] = False
DEBUG stream_writer.py:3174 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:707 recv IAC WILL SGA
DEBUG stream_writer.py:1900 handle_will(SGA)
DEBUG stream_writer.py:924 skip DO SGA; pending_option = True
DEBUG stream_writer.py:3174 remote_option[SGA] = True
DEBUG stream_writer.py:3174 pending_option[DO + SGA] = False
DEBUG stream_writer.py:707 recv IAC WILL ECHO
DEBUG stream_writer.py:1900 handle_will(ECHO)
DEBUG stream_writer.py:924 skip DO ECHO; pending_option = True
DEBUG stream_writer.py:3174 remote_option[ECHO] = True
DEBUG stream_writer.py:3174 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:707 recv IAC WONT STATUS
DEBUG stream_writer.py:2025 handle_wont(STATUS)
DEBUG stream_writer.py:3174 remote_option[STATUS] = False
DEBUG stream_writer.py:3174 pending_option[DO + STATUS] = False
INFO fingerprinting.py:746 connection for server fingerprint f9b3f33571e02f38
INFO client_base.py:106 Connection closed to <Peer 114.33.120.231 4002>