216.226.128.180

UntitledMUCK (216.226.128.180:4443)

Connection Banner:

This world is Pueblo 1.0 Enhanced. </xch_mudtext><img xch_mode=html><pre> Welcome to a ProtoMUCK site! connect <user> <password> to login ch <user> <password> to login hidden (Wizard only) request <user> <email> <your name> to request a character help to get help WHO to see who is online QUIT to quit this screen </pre> \* connect user pass logs in \* connect guest guest logs in as a guest \* request <user> <email> <your name> requests a character \* ch user pass logs in hidden, if you are a wizard \* HELP Shows the help screen \* WHO Shows who's online \* QUIT Disconnects

Server URLs

Server Info

  • Codebase: ProtoMUCK

  • Players online: 1 [1]

  • Uptime: 503 days

  • Server Location: πŸ‡ΊπŸ‡Έ United States (GeoIP)

Protocol Support

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

  • MSSP: Yes (MSSP)

  • GMCP: No

  • MSDP: No

  • MCCP: Yes (MSSP)

  • MCCP2: No

  • MXP: No

  • MSP: No

  • MCP: No

  • ZMP: No

Telnet Fingerprint

87bf69b65eb785ac

This fingerprint is shared by 7 other servers.

Options offered by server: MSSP

Options requested from client: CHARSET, NAWS, TTYPE

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

Show JSON
{
  "server-probe": {
    "fingerprint": "87bf69b65eb785ac",
    "fingerprint-data": {
      "offered-options": [
        "MSSP"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "ECHO",
        "EOR",
        "GMCP",
        "MSDP",
        "MSP",
        "MXP",
        "SGA",
        "STATUS",
        "ZMP"
      ],
      "requested-options": [
        "CHARSET",
        "NAWS",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": " \n* connect user pass\n  logs in\n \n* connect guest guest\n  logs in as a guest\n \n* request <user> <email> <your name>\n  requests a character\n \n* ch user pass\n  logs in hidden, if you are a wizard\n \n* HELP\n  Shows the help screen\n \n* WHO\n  Shows who's online\n \n* QUIT\n  Disconnects\n \n\n",
      "banner_before_return": "\n\r\nThis world is Pueblo 1.0 Enhanced.\r\n\r\n</xch_mudtext><img xch_mode=html><pre>\r\nWelcome to a ProtoMUCK site!\r\n\nconnect <user> <password> to login\r\nch <user> <password> to login hidden (Wizard only)\r\nrequest <user> <email> <your name> to request a character\r\nhelp to get help\r\nWHO to see who is online\r\nQUIT to quit this screen\r\n</pre>\r\n",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "ascii",
      "mssp": {
        "ANSI": "1",
        "CODEBASE": "ProtoMUCK",
        "FAMILY": "MUCK",
        "MCCP": "1",
        "NAME": "UntitledMUCK",
        "PLAYERS": "1",
        "UPTIME": "1727555399"
      },
      "option_states": {
        "server_offered": {
          "0x56": false,
          "MSSP": true
        },
        "server_requested": {
          "CHARSET": true,
          "NAWS": true,
          "TTYPE": true
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.21146821975708008,
        "total": 4.93422794342041
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-02-14T17:12:17.560909+00:00",
      "host": "216.226.128.180",
      "ip": "216.226.128.180",
      "port": 4443
    }
  ]
}

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 216.226.128.180 4443
Show Logfile
DEBUG client.py:965 Fingerprint client: host=216.226.128.180 port=4443
INFO client_base.py:175 Connected to <Peer 216.226.128.180 4443>
DEBUG client_base.py:492 negotiation complete after 0.00s.
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 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 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 CHARSET
DEBUG stream_writer.py:1770 handle_do(CHARSET)
DEBUG stream_writer.py:3174 pending_option[WILL + CHARSET] = True
DEBUG stream_writer.py:950 send IAC WILL CHARSET
DEBUG stream_writer.py:3174 local_option[CHARSET] = True
DEBUG stream_writer.py:3174 pending_option[WILL + CHARSET] = False
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': 'UntitledMUCK', 'PLAYERS': '1', 'UPTIME': '1727555399', 'ANSI': '1', 'CODEBASE':
    'ProtoMUCK', 'FAMILY': 'MUCK', 'MCCP': '1'}
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: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 + GMCP] = True
DEBUG stream_writer.py:950 send IAC DO GMCP
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 + ZMP] = True
DEBUG stream_writer.py:950 send IAC DO ZMP
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 WONT SGA
DEBUG stream_writer.py:2025 handle_wont(SGA)
DEBUG stream_writer.py:3174 remote_option[SGA] = False
DEBUG stream_writer.py:3174 pending_option[DO + SGA] = False
DEBUG stream_writer.py:707 recv IAC WONT ECHO
DEBUG stream_writer.py:2025 handle_wont(ECHO)
DEBUG stream_writer.py:3174 remote_option[ECHO] = False
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
DEBUG stream_writer.py:707 recv IAC WONT CHARSET
DEBUG stream_writer.py:2025 handle_wont(CHARSET)
DEBUG stream_writer.py:3174 remote_option[CHARSET] = False
DEBUG stream_writer.py:3174 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:707 recv IAC WONT EOR
DEBUG stream_writer.py:2025 handle_wont(EOR)
DEBUG stream_writer.py:3174 remote_option[EOR] = False
DEBUG stream_writer.py:3174 pending_option[DO + EOR] = False
DEBUG stream_writer.py:707 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2025 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3174 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3174 pending_option[DO + COM_PORT_OPTION] = False
DEBUG stream_writer.py:707 recv IAC WONT GMCP
DEBUG stream_writer.py:2025 handle_wont(GMCP)
DEBUG stream_writer.py:3174 remote_option[GMCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSDP
DEBUG stream_writer.py:2025 handle_wont(MSDP)
DEBUG stream_writer.py:3174 remote_option[MSDP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSP
DEBUG stream_writer.py:2025 handle_wont(MSP)
DEBUG stream_writer.py:3174 remote_option[MSP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSP] = False
DEBUG stream_writer.py:707 recv IAC WONT MXP
DEBUG stream_writer.py:2025 handle_wont(MXP)
DEBUG stream_writer.py:3174 remote_option[MXP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MXP] = False
DEBUG stream_writer.py:707 recv IAC WONT ZMP
DEBUG stream_writer.py:2025 handle_wont(ZMP)
DEBUG stream_writer.py:3174 remote_option[ZMP] = False
DEBUG stream_writer.py:3174 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:707 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2025 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3174 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3174 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:707 recv IAC WONT ATCP
DEBUG stream_writer.py:2025 handle_wont(ATCP)
DEBUG stream_writer.py:3174 remote_option[ATCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + ATCP] = False
INFO fingerprinting.py:746 connection for server fingerprint 87bf69b65eb785ac
INFO client_base.py:106 Connection closed to <Peer 216.226.128.180 4443>

Aeronautica (216.226.128.180:6663)

Connection Banner:

This world is Pueblo 1.0 Enhanced. </xch_mudtext><img xch_mode=html><pre> Welcome to a ProtoMUCK site! connect <user> <password> to login ch <user> <password> to login hidden (Wizard only) request <user> <email> <your name> to request a character help to get help WHO to see who is online QUIT to quit this screen </pre> _ _ /\\ \| \| (_) / \\ ___ _ __ ___ _ __ __ _ _ _\| \|_ _ ___ __ _ / /\\ \\ / _ \\ '__/ _ \\\| '_ \\ / _\` \| \| \| \| __\| \|/ __/ _\` \| / _​___ \\ __/ \| \| (_) \| \| \| \| (_\| \| \|_\| \| \|_\| \| (_\| (_\| \| /_/ \\_\\___\|_\| \\___/\|_\| \|_\|\\__,_\|\\__,_\|\\__\|_\|\\___\\__,_\| ,~-. ( ' )-. ,~'\`-. ,~' \` ' ) ) _( _) ) ( ( .​--.===.--. ( \` ' ) \`.%%.;::\|888.#\`. \`-'\`~​~=~' /%%/::::\|8888\\##\\ \|%%/:::::\|88888\\##\| EPIC SKY \|%%\|:::::\|88888\|##\|.,-. \\%%\|:::::\|88888\|##/ )_ ADVENTURES \\%\\:::::\|88888/#/ ( \`' ) \\%\\::::\|8888/#/( , -'\`-. ,~-. \`%\\:::\|888/#'( ( ') ) ( ) )_ \`\\__\|__/' \`~​-~=--~~=' ( \` ') ) [VVVVV] (_(_​.~~~' \\\|_\|/ [XXX] \`"""' -​--------------------------------------------------------- (We are currently recruiting Builders and Coders) To connect: connect <username> <password> To register: request <username> <password> <email> To visit: connect guest guest For help: help See who's on: WHO To disconnect: QUIT 1 players on right now. Log on and become another one! \* connect user pass logs in \* connect guest guest logs in as a guest \* request <user> <email> <your name> requests a character \* ch user pass logs in hidden, if you are a wizard \* HELP Shows the help screen \* WHO Shows who's online \* QUIT Disconnects

Server URLs

Server Info

  • Codebase: ProtoMUCK

  • Players online: 1 [2]

  • Uptime: 503 days

  • Server Location: πŸ‡ΊπŸ‡Έ United States (GeoIP)

Protocol Support

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

  • MSSP: Yes (MSSP)

  • GMCP: No

  • MSDP: No

  • MCCP: Yes (MSSP)

  • MCCP2: No

  • MXP: No

  • MSP: No

  • MCP: No

  • ZMP: No

Telnet Fingerprint

87bf69b65eb785ac

This fingerprint is shared by 7 other servers.

Options offered by server: MSSP

Options requested from client: CHARSET, NAWS, TTYPE

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

Show JSON
{
  "server-probe": {
    "fingerprint": "87bf69b65eb785ac",
    "fingerprint-data": {
      "offered-options": [
        "MSSP"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "ECHO",
        "EOR",
        "GMCP",
        "MSDP",
        "MSP",
        "MXP",
        "SGA",
        "STATUS",
        "ZMP"
      ],
      "requested-options": [
        "CHARSET",
        "NAWS",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": " \r\n* connect user pass\r\n  logs in\r\n \r\n* connect guest guest\r\n  logs in as a guest\r\n \r\n* request <user> <email> <your name>\r\n  requests a character\r\n \r\n* ch user pass\r\n  logs in hidden, if you are a wizard\r\n \r\n* HELP\r\n  Shows the help screen\r\n \r\n* WHO\r\n  Shows who's online\r\n \r\n* QUIT\r\n  Disconnects\r\n \r\n\r\n",
      "banner_before_return": "\n\r\nThis world is Pueblo 1.0 Enhanced.\r\n\r\n</xch_mudtext><img xch_mode=html><pre>\r\nWelcome to a ProtoMUCK site!\r\n\nconnect <user> <password> to login\r\nch <user> <password> to login hidden (Wizard only)\r\nrequest <user> <email> <your name> to request a character\r\nhelp to get help\r\nWHO to see who is online\r\nQUIT to quit this screen\r\n</pre>\r\n                                           \u001b[0;36m_   _\u001b[0m            \u001b[0m\r\n     \u001b[0;36m/\\                                   | | (_)\u001b[0m          \u001b[0m\r\n    \u001b[0;36m/  \\   ___ _ __ ___  _ __   __ _ _   _| |_ _  ___ __ _ \u001b[0m\u001b[0m\r\n   \u001b[0;36m/ /\\ \\ / _ \\ '__/ _ \\| '_ \\ / _` | | | | __| |/ __/ _` |\u001b[0m\u001b[0m\r\n  \u001b[0;36m/ ____ \\  __/ | | (_) | | | | (_| | |_| | |_| | (_| (_| |\u001b[0m\u001b[0m\r\n \u001b[0;36m/_/    \\_\\___|_|  \\___/|_| |_|\\__,_|\\__,_|\\__|_|\\___\\__,_|\u001b[0m\u001b[0m\r\n                                                           \r\n                                                           \r\n                                                           \r\n           ,~-.\r\n          (  ' )-.          ,~'`-.\r\n       ,~' `  ' ) )       _(   _) )\r\n      ( ( .--.===.--.    (  `    ' )\r\n       `.%%.;::|888.#`.   `-'`~~=~'\r\n       /%%/::::|8888\\##\\\r\n      |%%/:::::|88888\\##|                    \u001b[1;34mEPIC SKY\u001b[0m\u001b[0m\r\n      |%%|:::::|88888|##|.,-.\r\n      \\%%|:::::|88888|##/    )_             \u001b[1;34mADVENTURES\u001b[0m\u001b[0m\r\n       \\%\\:::::|88888/#/ ( `'  )\r\n        \\%\\::::|8888/#/(  ,  -'`-.\r\n    ,~-. `%\\:::|888/#'(  (     ') )\r\n   (  ) )_ `\\__|__/'   `~-~=--~~='\r\n  ( ` ')  ) [VVVVV]\r\n (_(_.~~~'   \\|_|/   \r\n             [XXX]\r\n             `\"\"\"'\r\n \r\n \r\n \r\n \r\n\u001b[1;37m----------------------------------------------------------\u001b[0m\u001b[0m\r\n     \r\n    \u001b[1;37m(We are currently recruiting Builders and Coders)\u001b[0m\u001b[0m\r\n     \r\n    \u001b[1;37mTo connect\u001b[0m:     connect <username> <password>\u001b[0m\r\n    \u001b[1;37mTo register\u001b[0m:    request <username> <password> <email>\u001b[0m\r\n    \u001b[1;37mTo visit\u001b[0m:       connect guest guest\u001b[0m\r\n    \u001b[1;37mFor help\u001b[0m:       help\u001b[0m\r\n    \u001b[1;37mSee who's on\u001b[0m:   WHO\u001b[0m\r\n    \u001b[1;37mTo disconnect\u001b[0m:  QUIT\u001b[0m\r\n                    \r\n                    \r\n                    \r\n1 players on right now.  Log on and become another one!\r\n",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "ascii",
      "mssp": {
        "ANSI": "1",
        "CODEBASE": "ProtoMUCK",
        "FAMILY": "MUCK",
        "MCCP": "1",
        "NAME": "Aeronautica",
        "PLAYERS": "1",
        "UPTIME": "1727555400"
      },
      "option_states": {
        "server_offered": {
          "0x56": false,
          "MSSP": true
        },
        "server_requested": {
          "CHARSET": true,
          "NAWS": true,
          "TTYPE": true
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.2063143253326416,
        "total": 4.952118873596191
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-02-14T17:10:06.121443+00:00",
      "host": "216.226.128.180",
      "ip": "216.226.128.180",
      "port": 6663
    }
  ]
}

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 216.226.128.180 6663
Show Logfile
DEBUG client.py:965 Fingerprint client: host=216.226.128.180 port=6663
INFO client_base.py:175 Connected to <Peer 216.226.128.180 6663>
DEBUG client_base.py:492 negotiation complete after 0.00s.
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 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 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 CHARSET
DEBUG stream_writer.py:1770 handle_do(CHARSET)
DEBUG stream_writer.py:3174 pending_option[WILL + CHARSET] = True
DEBUG stream_writer.py:950 send IAC WILL CHARSET
DEBUG stream_writer.py:3174 local_option[CHARSET] = True
DEBUG stream_writer.py:3174 pending_option[WILL + CHARSET] = False
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': 'Aeronautica', 'PLAYERS': '1', 'UPTIME': '1727555400', 'ANSI': '1', 'CODEBASE':
    'ProtoMUCK', 'FAMILY': 'MUCK', 'MCCP': '1'}
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: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 + GMCP] = True
DEBUG stream_writer.py:950 send IAC DO GMCP
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 + ZMP] = True
DEBUG stream_writer.py:950 send IAC DO ZMP
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 WONT SGA
DEBUG stream_writer.py:2025 handle_wont(SGA)
DEBUG stream_writer.py:3174 remote_option[SGA] = False
DEBUG stream_writer.py:3174 pending_option[DO + SGA] = False
DEBUG stream_writer.py:707 recv IAC WONT ECHO
DEBUG stream_writer.py:2025 handle_wont(ECHO)
DEBUG stream_writer.py:3174 remote_option[ECHO] = False
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
DEBUG stream_writer.py:707 recv IAC WONT CHARSET
DEBUG stream_writer.py:2025 handle_wont(CHARSET)
DEBUG stream_writer.py:3174 remote_option[CHARSET] = False
DEBUG stream_writer.py:3174 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:707 recv IAC WONT EOR
DEBUG stream_writer.py:2025 handle_wont(EOR)
DEBUG stream_writer.py:3174 remote_option[EOR] = False
DEBUG stream_writer.py:3174 pending_option[DO + EOR] = False
DEBUG stream_writer.py:707 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2025 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3174 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3174 pending_option[DO + COM_PORT_OPTION] = False
DEBUG stream_writer.py:707 recv IAC WONT GMCP
DEBUG stream_writer.py:2025 handle_wont(GMCP)
DEBUG stream_writer.py:3174 remote_option[GMCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSDP
DEBUG stream_writer.py:2025 handle_wont(MSDP)
DEBUG stream_writer.py:3174 remote_option[MSDP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSP
DEBUG stream_writer.py:2025 handle_wont(MSP)
DEBUG stream_writer.py:3174 remote_option[MSP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSP] = False
DEBUG stream_writer.py:707 recv IAC WONT MXP
DEBUG stream_writer.py:2025 handle_wont(MXP)
DEBUG stream_writer.py:3174 remote_option[MXP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MXP] = False
DEBUG stream_writer.py:707 recv IAC WONT ZMP
DEBUG stream_writer.py:2025 handle_wont(ZMP)
DEBUG stream_writer.py:3174 remote_option[ZMP] = False
DEBUG stream_writer.py:3174 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:707 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2025 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3174 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3174 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:707 recv IAC WONT ATCP
DEBUG stream_writer.py:2025 handle_wont(ATCP)
DEBUG stream_writer.py:3174 remote_option[ATCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + ATCP] = False
INFO fingerprinting.py:737 new server fingerprint 87bf69b65eb785ac
INFO client_base.py:106 Connection closed to <Peer 216.226.128.180 6663>

Aeronautica (mucks.cyberleo.net:6660)

Connection Banner:

_ _ /\\ \| \| (_) / \\ ___ _ __ ___ _ __ __ _ _ _\| \|_ _ ___ __ _ / /\\ \\ / _ \\ '__/ _ \\\| '_ \\ / _\` \| \| \| \| __\| \|/ __/ _\` \| / _​___ \\ __/ \| \| (_) \| \| \| \| (_\| \| \|_\| \| \|_\| \| (_\| (_\| \| /_/ \\_\\___\|_\| \\___/\|_\| \|_\|\\__,_\|\\__,_\|\\__\|_\|\\___\\__,_\| ,~-. ( ' )-. ,~'\`-. ,~' \` ' ) ) _( _) ) ( ( .​--.===.--. ( \` ' ) \`.%%.;::\|888.#\`. \`-'\`~​~=~' /%%/::::\|8888\\##\\ \|%%/:::::\|88888\\##\| EPIC SKY \|%%\|:::::\|88888\|##\|.,-. \\%%\|:::::\|88888\|##/ )_ ADVENTURES \\%\\:::::\|88888/#/ ( \`' ) \\%\\::::\|8888/#/( , -'\`-. ,~-. \`%\\:::\|888/#'( ( ') ) ( ) )_ \`\\__\|__/' \`~​-~=--~~=' ( \` ') ) [VVVVV] (_(_​.~~~' \\\|_\|/ [XXX] \`"""' -​--------------------------------------------------------- (We are currently recruiting Builders and Coders) To connect: connect <username> <password> To register: request <username> <password> <email> To visit: connect guest guest For help: help See who's on: WHO To disconnect: QUIT 1 players on right now. Log on and become another one! \* connect user pass logs in \* connect guest guest logs in as a guest \* request <user> <email> <your name> requests a character \* ch user pass logs in hidden, if you are a wizard \* HELP Shows the help screen \* WHO Shows who's online \* QUIT Disconnects

Server URLs

Server Info

  • Codebase: ProtoMUCK

  • Players online: 1 [3]

  • Uptime: 503 days

  • Server Location: πŸ‡ΊπŸ‡Έ United States (GeoIP)

Protocol Support

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

  • MSSP: Yes (MSSP)

  • GMCP: No

  • MSDP: No

  • MCCP: Yes (MSSP)

  • MCCP2: No

  • MXP: No

  • MSP: No

  • MCP: No

  • ZMP: No

Telnet Fingerprint

87bf69b65eb785ac

This fingerprint is shared by 7 other servers.

Options offered by server: MSSP

Options requested from client: CHARSET, NAWS, TTYPE

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

Show JSON
{
  "server-probe": {
    "fingerprint": "87bf69b65eb785ac",
    "fingerprint-data": {
      "offered-options": [
        "MSSP"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "ECHO",
        "EOR",
        "GMCP",
        "MSDP",
        "MSP",
        "MXP",
        "SGA",
        "STATUS",
        "ZMP"
      ],
      "requested-options": [
        "CHARSET",
        "NAWS",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": " \r\n* connect user pass\r\n  logs in\r\n \r\n* connect guest guest\r\n  logs in as a guest\r\n \r\n* request <user> <email> <your name>\r\n  requests a character\r\n \r\n* ch user pass\r\n  logs in hidden, if you are a wizard\r\n \r\n* HELP\r\n  Shows the help screen\r\n \r\n* WHO\r\n  Shows who's online\r\n \r\n* QUIT\r\n  Disconnects\r\n \r\n\r\n",
      "banner_before_return": "\n\n                                           \u001b[0;36m_   _\u001b[0m            \u001b[0m\r\n     \u001b[0;36m/\\                                   | | (_)\u001b[0m          \u001b[0m\r\n    \u001b[0;36m/  \\   ___ _ __ ___  _ __   __ _ _   _| |_ _  ___ __ _ \u001b[0m\u001b[0m\r\n   \u001b[0;36m/ /\\ \\ / _ \\ '__/ _ \\| '_ \\ / _` | | | | __| |/ __/ _` |\u001b[0m\u001b[0m\r\n  \u001b[0;36m/ ____ \\  __/ | | (_) | | | | (_| | |_| | |_| | (_| (_| |\u001b[0m\u001b[0m\r\n \u001b[0;36m/_/    \\_\\___|_|  \\___/|_| |_|\\__,_|\\__,_|\\__|_|\\___\\__,_|\u001b[0m\u001b[0m\r\n                                                           \r\n                                                           \r\n                                                           \r\n           ,~-.\r\n          (  ' )-.          ,~'`-.\r\n       ,~' `  ' ) )       _(   _) )\r\n      ( ( .--.===.--.    (  `    ' )\r\n       `.%%.;::|888.#`.   `-'`~~=~'\r\n       /%%/::::|8888\\##\\\r\n      |%%/:::::|88888\\##|                    \u001b[1;34mEPIC SKY\u001b[0m\u001b[0m\r\n      |%%|:::::|88888|##|.,-.\r\n      \\%%|:::::|88888|##/    )_             \u001b[1;34mADVENTURES\u001b[0m\u001b[0m\r\n       \\%\\:::::|88888/#/ ( `'  )\r\n        \\%\\::::|8888/#/(  ,  -'`-.\r\n    ,~-. `%\\:::|888/#'(  (     ') )\r\n   (  ) )_ `\\__|__/'   `~-~=--~~='\r\n  ( ` ')  ) [VVVVV]\r\n (_(_.~~~'   \\|_|/   \r\n             [XXX]\r\n             `\"\"\"'\r\n \r\n \r\n \r\n \r\n\u001b[1;37m----------------------------------------------------------\u001b[0m\u001b[0m\r\n     \r\n    \u001b[1;37m(We are currently recruiting Builders and Coders)\u001b[0m\u001b[0m\r\n     \r\n    \u001b[1;37mTo connect\u001b[0m:     connect <username> <password>\u001b[0m\r\n    \u001b[1;37mTo register\u001b[0m:    request <username> <password> <email>\u001b[0m\r\n    \u001b[1;37mTo visit\u001b[0m:       connect guest guest\u001b[0m\r\n    \u001b[1;37mFor help\u001b[0m:       help\u001b[0m\r\n    \u001b[1;37mSee who's on\u001b[0m:   WHO\u001b[0m\r\n    \u001b[1;37mTo disconnect\u001b[0m:  QUIT\u001b[0m\r\n                    \r\n                    \r\n                    \r\n1 players on right now.  Log on and become another one!\r\n",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "ascii",
      "mssp": {
        "ANSI": "1",
        "CODEBASE": "ProtoMUCK",
        "FAMILY": "MUCK",
        "MCCP": "1",
        "NAME": "Aeronautica",
        "PLAYERS": "1",
        "UPTIME": "1727555400"
      },
      "option_states": {
        "server_offered": {
          "0x56": false,
          "MSSP": true
        },
        "server_requested": {
          "CHARSET": true,
          "NAWS": true,
          "TTYPE": true
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.2142937183380127,
        "total": 4.938206911087036
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-02-14T17:10:57.738879+00:00",
      "host": "mucks.cyberleo.net",
      "ip": "216.226.128.180",
      "port": 6660
    }
  ]
}

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 mucks.cyberleo.net 6660
Show Logfile
DEBUG client.py:965 Fingerprint client: host=mucks.cyberleo.net port=6660
INFO client_base.py:175 Connected to <Peer 216.226.128.180 6660>
DEBUG client_base.py:492 negotiation complete after 0.00s.
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 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 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 CHARSET
DEBUG stream_writer.py:1770 handle_do(CHARSET)
DEBUG stream_writer.py:3174 pending_option[WILL + CHARSET] = True
DEBUG stream_writer.py:950 send IAC WILL CHARSET
DEBUG stream_writer.py:3174 local_option[CHARSET] = True
DEBUG stream_writer.py:3174 pending_option[WILL + CHARSET] = False
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': 'Aeronautica', 'PLAYERS': '1', 'UPTIME': '1727555400', 'ANSI': '1', 'CODEBASE':
    'ProtoMUCK', 'FAMILY': 'MUCK', 'MCCP': '1'}
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: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 + GMCP] = True
DEBUG stream_writer.py:950 send IAC DO GMCP
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 + ZMP] = True
DEBUG stream_writer.py:950 send IAC DO ZMP
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 WONT SGA
DEBUG stream_writer.py:2025 handle_wont(SGA)
DEBUG stream_writer.py:3174 remote_option[SGA] = False
DEBUG stream_writer.py:3174 pending_option[DO + SGA] = False
DEBUG stream_writer.py:707 recv IAC WONT ECHO
DEBUG stream_writer.py:2025 handle_wont(ECHO)
DEBUG stream_writer.py:3174 remote_option[ECHO] = False
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
DEBUG stream_writer.py:707 recv IAC WONT CHARSET
DEBUG stream_writer.py:2025 handle_wont(CHARSET)
DEBUG stream_writer.py:3174 remote_option[CHARSET] = False
DEBUG stream_writer.py:3174 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:707 recv IAC WONT EOR
DEBUG stream_writer.py:2025 handle_wont(EOR)
DEBUG stream_writer.py:3174 remote_option[EOR] = False
DEBUG stream_writer.py:3174 pending_option[DO + EOR] = False
DEBUG stream_writer.py:707 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2025 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3174 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3174 pending_option[DO + COM_PORT_OPTION] = False
DEBUG stream_writer.py:707 recv IAC WONT GMCP
DEBUG stream_writer.py:2025 handle_wont(GMCP)
DEBUG stream_writer.py:3174 remote_option[GMCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSDP
DEBUG stream_writer.py:2025 handle_wont(MSDP)
DEBUG stream_writer.py:3174 remote_option[MSDP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSP
DEBUG stream_writer.py:2025 handle_wont(MSP)
DEBUG stream_writer.py:3174 remote_option[MSP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSP] = False
DEBUG stream_writer.py:707 recv IAC WONT MXP
DEBUG stream_writer.py:2025 handle_wont(MXP)
DEBUG stream_writer.py:3174 remote_option[MXP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MXP] = False
DEBUG stream_writer.py:707 recv IAC WONT ZMP
DEBUG stream_writer.py:2025 handle_wont(ZMP)
DEBUG stream_writer.py:3174 remote_option[ZMP] = False
DEBUG stream_writer.py:3174 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:707 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2025 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3174 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3174 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:707 recv IAC WONT ATCP
DEBUG stream_writer.py:2025 handle_wont(ATCP)
DEBUG stream_writer.py:3174 remote_option[ATCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + ATCP] = False
INFO fingerprinting.py:746 connection for server fingerprint 87bf69b65eb785ac
INFO client_base.py:106 Connection closed to <Peer 216.226.128.180 6660>

NoirHaven (mucks.cyberleo.net:7878)

Connection Banner:

_ _ _ _ _ \| \\ \| \| ___ (_)_ __ \| \| \| \| __ ___ _​____ _ __ \| \\\| \|/ _ \\\| \| '__\| \| \|_\| \|/ _\` \\ \\ / / _ \\ '_ \\ \| \|\\ \| (_) \| \| \| \| _ \| (_\| \|\\ V / __/ \| \| \| \|_\| \\_\|\\___/\|_\|_\| \|_\| \|_\|\\__,_\| \\_/ \\___\|_\| \|_\| +-'~\`-​--------------------------------/\\-- \|\|"​""""""""""""""""""""""""""""""" \\\\\\\\\\\\ \\/~) \|\| \\\\\\\\\\\\ \\/_ \|~​~~~~~~~-________________-_________________\\ ~​--_ !-​--------\|_​________ -​-----~~~~~(-- )-​-~~ \\ /~​~~~\\~~\\ )--- \\_ /( \|\| \| \| \\ () \\\\ \\\\_​___/_ / ()\\ \\\\ \`~​~~~~~~~~-. \\ \\\\ \\ \\ <($)> \\\\ \\ \\ \\\\ \\ \\ \\\\ \\ \\ \\\\ \\ \\ () \\\| _\\_\\_​_====~~~ -​----------------------------------------------------------- Welcome to Noir Haven: An Alternate Look on the Dirty 30's! -​----------------------------------------------------------- (We are currently recruiting Builders and Coders) To connect: connect <username> <password> To register: request <username> <password> <email> To visit: connect guest guest For help: help See who's on: WHO To disconnect: QUIT 0 players on right now. Log on and become another one! \* connect user pass logs in \* connect guest guest logs in as a guest \* request <user> <email> <your name> requests a character \* ch user pass logs in hidden, if you are a wizard \* HELP Shows the help screen \* WHO Shows who's online \* QUIT Disconnects

Server URLs

Server Info

  • Codebase: ProtoMUCK

  • Players online: 0 [4]

  • Uptime: 503 days

  • Server Location: πŸ‡ΊπŸ‡Έ United States (GeoIP)

Protocol Support

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

  • MSSP: Yes (MSSP)

  • GMCP: No

  • MSDP: No

  • MCCP: Yes (MSSP)

  • MCCP2: No

  • MXP: No

  • MSP: No

  • MCP: No

  • ZMP: No

Telnet Fingerprint

87bf69b65eb785ac

This fingerprint is shared by 7 other servers.

Options offered by server: MSSP

Options requested from client: CHARSET, NAWS, TTYPE

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

Show JSON
{
  "server-probe": {
    "fingerprint": "87bf69b65eb785ac",
    "fingerprint-data": {
      "offered-options": [
        "MSSP"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "ECHO",
        "EOR",
        "GMCP",
        "MSDP",
        "MSP",
        "MXP",
        "SGA",
        "STATUS",
        "ZMP"
      ],
      "requested-options": [
        "CHARSET",
        "NAWS",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": " \r\n* connect user pass\r\n  logs in\r\n \r\n* connect guest guest\r\n  logs in as a guest\r\n \r\n* request <user> <email> <your name>\r\n  requests a character\r\n \r\n* ch user pass\r\n  logs in hidden, if you are a wizard\r\n \r\n* HELP\r\n  Shows the help screen\r\n \r\n* WHO\r\n  Shows who's online\r\n \r\n* QUIT\r\n  Disconnects\r\n \r\n\r\n",
      "banner_before_return": "\n     \r\n     \u001b[1;37m _   _       _        _   _                      \u001b[0m\u001b[0m\r\n     \u001b[1;37m| \\ | | ___ (_)_ __  | | | | __ ___   _____ _ __  \u001b[0m\u001b[0m\r\n     \u001b[1;37m|  \\| |/ _ \\| | '__| | |_| |/ _` \\ \\ / / _ \\ '_ \\\u001b[0m\u001b[0m\r\n     \u001b[1;37m| |\\  | (_) | | |    |  _  | (_| |\\ V /  __/ | | |\u001b[0m\u001b[0m\r\n     \u001b[1;37m|_| \\_|\\___/|_|_|    |_| |_|\\__,_| \\_/ \\___|_| |_|\u001b[0m\u001b[0m\r\n                                                     \r\n     \r\n      \u001b[1;30m +-'~`---------------------------------/\\--\u001b[0m\u001b[0m\r\n      \u001b[1;30m||\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\" \\\\\\\\\\\\  \\/~)\u001b[0m\u001b[0m\r\n      \u001b[1;30m||                                  \\\\\\\\\\\\  \\/_\u001b[0m\u001b[0m\r\n      \u001b[1;30m |~~~~~~~~-________________-_________________\\ ~--_\u001b[0m\u001b[0m\r\n      \u001b[1;30m !---------|_________       ------~~~~~(--   )--~~\u001b[0m\u001b[0m\r\n                          \u001b[1;30m \\ /~~~~\\~~\\  \u001b[0;33m )--- \\_ \u001b[1;30m/(\u001b[0m\u001b[0m\r\n                          \u001b[1;30m  ||     |  | \u001b[0;33m\\   \u001b[1;30m()\u001b[0;33m   \\\u001b[1;30m\\\u001b[0m\u001b[0m\r\n                          \u001b[1;30m  \\\\____/_ / ()\u001b[0;33m\\        \\\u001b[1;30m\\\u001b[0m\u001b[0m\r\n                          \u001b[1;30m   `~~~~~~~~~-. \u001b[0;33m\\        \\\u001b[1;30m\\\u001b[0m\u001b[0m\r\n                          \u001b[1;30m               \\ \u001b[0;33m\\  \u001b[1;30m<\u001b[1;33m($)\u001b[1;30m>\u001b[0;33m \\\u001b[1;30m\\\u001b[0m\u001b[0m\r\n                          \u001b[1;30m                \\ \u001b[0;33m\\        \\\u001b[1;30m\\\u001b[0m\u001b[0m\r\n                          \u001b[1;30m                 \\ \u001b[0;33m\\        \\\u001b[1;30m\\\u001b[0m\u001b[0m\r\n                          \u001b[1;30m                  \\ \u001b[0;33m\\        \\\u001b[1;30m\\\u001b[0m\u001b[0m\r\n                          \u001b[1;30m                   \\ \u001b[0;33m\\  \u001b[1;30m()\u001b[0;33m    \\\u001b[1;30m|\u001b[0m\u001b[0m\r\n                          \u001b[1;30m                   _\\_\u001b[0;33m\\__\u001b[1;30m====~~~\u001b[0m\u001b[0m\r\n     \r\n     \r\n    \u001b[1;37m------------------------------------------------------------\u001b[0m\u001b[0m\r\n    \u001b[1;33mWelcome to Noir Haven: An Alternate Look on the Dirty 30's!\u001b[0m\u001b[0m\r\n    \u001b[1;37m------------------------------------------------------------\u001b[0m\u001b[0m\r\n     \r\n    \u001b[1;31m(We are currently recruiting Builders and Coders)\u001b[0m\u001b[0m\r\n     \r\n    \u001b[1;37mTo connect\u001b[0m:     connect <username> <password>\u001b[0m\r\n    \u001b[1;37mTo register\u001b[0m:    request <username> <password> <email>\u001b[0m\r\n    \u001b[1;37mTo visit\u001b[0m:       connect guest guest\u001b[0m\r\n    \u001b[1;37mFor help\u001b[0m:       help\u001b[0m\r\n    \u001b[1;37mSee who's on\u001b[0m:   WHO\u001b[0m\r\n    \u001b[1;31mTo disconnect\u001b[0m:  QUIT\u001b[0m\r\n \r\n0 players on right now.  Log on and become another one!\r\n",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "ascii",
      "mssp": {
        "ANSI": "1",
        "CODEBASE": "ProtoMUCK",
        "FAMILY": "MUCK",
        "MCCP": "1",
        "NAME": "NoirHaven",
        "PLAYERS": "0",
        "UPTIME": "1727555399"
      },
      "option_states": {
        "server_offered": {
          "0x56": false,
          "MSSP": true
        },
        "server_requested": {
          "CHARSET": true,
          "NAWS": true,
          "TTYPE": true
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.22095894813537598,
        "total": 4.94403862953186
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-02-14T17:12:18.585907+00:00",
      "host": "mucks.cyberleo.net",
      "ip": "216.226.128.180",
      "port": 7878
    }
  ]
}

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 mucks.cyberleo.net 7878
Show Logfile
DEBUG client.py:965 Fingerprint client: host=mucks.cyberleo.net port=7878
INFO client_base.py:175 Connected to <Peer 216.226.128.180 7878>
DEBUG client_base.py:492 negotiation complete after 0.00s.
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 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 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 CHARSET
DEBUG stream_writer.py:1770 handle_do(CHARSET)
DEBUG stream_writer.py:3174 pending_option[WILL + CHARSET] = True
DEBUG stream_writer.py:950 send IAC WILL CHARSET
DEBUG stream_writer.py:3174 local_option[CHARSET] = True
DEBUG stream_writer.py:3174 pending_option[WILL + CHARSET] = False
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': 'NoirHaven', 'PLAYERS': '0', 'UPTIME': '1727555399', 'ANSI': '1', 'CODEBASE':
    'ProtoMUCK', 'FAMILY': 'MUCK', 'MCCP': '1'}
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: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 + GMCP] = True
DEBUG stream_writer.py:950 send IAC DO GMCP
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 + ZMP] = True
DEBUG stream_writer.py:950 send IAC DO ZMP
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 WONT SGA
DEBUG stream_writer.py:2025 handle_wont(SGA)
DEBUG stream_writer.py:3174 remote_option[SGA] = False
DEBUG stream_writer.py:3174 pending_option[DO + SGA] = False
DEBUG stream_writer.py:707 recv IAC WONT ECHO
DEBUG stream_writer.py:2025 handle_wont(ECHO)
DEBUG stream_writer.py:3174 remote_option[ECHO] = False
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
DEBUG stream_writer.py:707 recv IAC WONT CHARSET
DEBUG stream_writer.py:2025 handle_wont(CHARSET)
DEBUG stream_writer.py:3174 remote_option[CHARSET] = False
DEBUG stream_writer.py:3174 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:707 recv IAC WONT EOR
DEBUG stream_writer.py:2025 handle_wont(EOR)
DEBUG stream_writer.py:3174 remote_option[EOR] = False
DEBUG stream_writer.py:3174 pending_option[DO + EOR] = False
DEBUG stream_writer.py:707 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2025 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3174 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3174 pending_option[DO + COM_PORT_OPTION] = False
DEBUG stream_writer.py:707 recv IAC WONT GMCP
DEBUG stream_writer.py:2025 handle_wont(GMCP)
DEBUG stream_writer.py:3174 remote_option[GMCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSDP
DEBUG stream_writer.py:2025 handle_wont(MSDP)
DEBUG stream_writer.py:3174 remote_option[MSDP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:707 recv IAC WONT MSP
DEBUG stream_writer.py:2025 handle_wont(MSP)
DEBUG stream_writer.py:3174 remote_option[MSP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MSP] = False
DEBUG stream_writer.py:707 recv IAC WONT MXP
DEBUG stream_writer.py:2025 handle_wont(MXP)
DEBUG stream_writer.py:3174 remote_option[MXP] = False
DEBUG stream_writer.py:3174 pending_option[DO + MXP] = False
DEBUG stream_writer.py:707 recv IAC WONT ZMP
DEBUG stream_writer.py:2025 handle_wont(ZMP)
DEBUG stream_writer.py:3174 remote_option[ZMP] = False
DEBUG stream_writer.py:3174 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:707 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2025 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3174 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3174 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:707 recv IAC WONT ATCP
DEBUG stream_writer.py:2025 handle_wont(ATCP)
DEBUG stream_writer.py:3174 remote_option[ATCP] = False
DEBUG stream_writer.py:3174 pending_option[DO + ATCP] = False
INFO fingerprinting.py:746 connection for server fingerprint 87bf69b65eb785ac
INFO client_base.py:106 Connection closed to <Peer 216.226.128.180 7878>