207.162.200.121 (nanvaent.org)

Nanvaent (nanvaent.org:23)

Connection Banner:

KK HS=O0#?J\`P 1 "u@bW ʿ8mfd%{^lEëV BqTm\*M,a̐_u4ϣH5] âXcX y\`![4Xș 4g8r3Do[؉~G8c4 NV /yuφ: Q Ftzᗻ$@ws{et>ԠaDdz\*# v_Ξ_J+؟iRw Uy܊Y)꣯?hZEJ.d?f\`5 viܓls \*_dzڀXOJUHJLV()29O

This banner is more than 99% similar to 1 other server:

Server URLs

Server Info

  • Players online: 10 [1]

  • Uptime: 42 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: No

  • MCCP2: Negotiated

  • MXP: Negotiated

  • MSP: No

  • MCP: No

  • ZMP: Negotiated

Telnet Fingerprint

d829a62e22869ca7

This fingerprint is shared by 3 other servers.

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

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

Show JSON
{
  "server-probe": {
    "fingerprint": "d829a62e22869ca7",
    "fingerprint-data": {
      "offered-options": [],
      "probed-protocol": "server",
      "refused-options": [],
      "requested-options": [
        "MXP",
        "NAWS",
        "NEW_ENVIRON",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "\nO\udccd\udcc9\udcd1\u0001\udce9JUHJL\udcceV(\u0006\udcb1\udcf2\udc81\udce6\u0015)\udc94\u0000\udc9d\u000329O\udc91\udc97\u000b\u0000\u0000\u0000\udcff",
      "banner_before_return": "\udcec\u0007\u0000\u0000\u0000\u0000\udcff\udcfaK\udc82\udcf1\u0007\u0000\u0000\u0000\u0000\udcff\udcfaK\u001dH\u0002\u0000\u0000\u0000\udcff\udcb4S=O\udcc30\u0010\udcdd#\udce5?\udc9c\udcba\u0014\udc86\udcf6\udcf6J\udc95`\udcc8\udcc6P\t1 \udc8c\"\udcb7u\udc93@bW\udc89\r\udcca\udcbf\udcc7\udce78\udcc5m\u0003f\udce1d%\udcbe\udc8f\udcf7\udcec{\udcb6\udcd3\u0004^\udcd6\udceb\udcf5\udce2\udcccl\udce0\u0015\udcb2E\udcc3\udcab\u001aV \udcb9\udcfc\udce0B\udcea\udcbbq\udcb2Tm\udcf1\u0003*M,a\udccc\udc90\udcb9_\udcbc\u0012\u0001\udcd8u4\udccf\udca3H\udca45\udcd8\u0014]\f\udc8a\udcc3\udca2\udc97X\udcebc\u0004\udcea\udc90\u0013X\u001c\udc90y`\udcce\udcf1![\udc90\udce3\udce0\u00104\udcc8X\udce0\u0015\udcc8\udc99\udca5\udcbb\t\u0013\udce3\udcba4g\udc83\udce3\udc9b8\udc85r\u00183Do\udca9\u0002\udcea[\udcdf\udcd8\udc89\udc93\udcb9~G\udcd88\udc88\udcee\u0014\udca2\udced\udc8d\u0019\udcf7\udcb9\udce0\udcfa\udce6c4\udc90\r\u001d\u0005N\u0010\udca2V\udc87\f\udced\u000f/y\udca6u\u000e\udccf\udc86\u0005:\r\udce3Q\u001e\udcf3\udcd4\t\udc98\u0017Ftz\u000e\udcd5\udce1\udc97\udcbb\udce7$@ws{e\udce0\udccdt\u001a>\udcb9\udcd4\udca0\udc95\u0017\u0017a\u0002Dd\udc84\udca9\udc95z\u0007\udcde*#\udcf7\udccb\udcc8\rv\udca7\udce5_\udc93\u0016\udcb5\u0014\u001a\udcce\udc9e_\udcd4J\udcad\udc8f+\udcc4\u0010\udc84\udcf0\udcd8\udc9f\udc95i\udca1\udcad\udc8aRw\udcd0\udcf0\u001e\udcb6\u0002\udcf6U\udcb7\udcaby\udcd5\b\udcdb\udce4\udca6\u0016\udcdc\udc8a\udcab\udcfb\udca3\udc80Y)\udcea\udca3\udcaf\udc9d\u0001?h\udcd1ZE\udc8aJ.\udcd3d\udcf3\udc90\udcdd?f`\udca8\udcb6\udcb4\udc87\udcb15\udcc5\u001cv\udcaai\udcb8\udcdc\udc93\udcb8\udcb6\u000el\udcacs\udcb2\u001f*\udcab_\udc9ad\udc92\u0018z\udcda\udc80\udce4\udc8dX\udcc1\u0017\u0000\u0000\u0000\udcff",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "ascii",
      "mssp": {
        "NAME": "Nanvaent",
        "PLAYERS": "10",
        "UPTIME": "1771879512"
      },
      "option_states": {
        "server_offered": {
          "AARDWOLF": false,
          "ATCP": false,
          "GMCP": false,
          "MCCP2": true,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": true,
          "MXP": false,
          "ZMP": true
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "GMCP": false,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": true,
          "NAWS": true,
          "NEW_ENVIRON": true,
          "TTYPE": true,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.0,
        "total": 5.5869364738464355
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-03-07T03:56:48.771400+00:00",
      "host": "nanvaent.org",
      "ip": "207.162.200.121",
      "port": 23
    },
    {
      "connected": "2026-04-07T07:24:30.108643+00:00",
      "host": "nanvaent.org",
      "ip": "207.162.200.121",
      "port": 23
    }
  ]
}

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 nanvaent.org 23
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=nanvaent.org port=23
INFO client_base.py:190 Connected to <Peer 207.162.200.121 23>
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:773 recv IAC DO TTYPE
DEBUG stream_writer.py:1887 handle_do(TTYPE)
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:1024 send IAC WILL TTYPE
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3384 local_option[TTYPE] = True
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:773 recv IAC DO NAWS
DEBUG stream_writer.py:1887 handle_do(NAWS)
DEBUG stream_writer.py:3384 pending_option[WILL + NAWS] = True
DEBUG stream_writer.py:1024 send IAC WILL NAWS
DEBUG stream_writer.py:2507 send IAC SB NAWS (rows=25, cols=80) IAC SE
DEBUG stream_writer.py:3384 local_option[NAWS] = True
DEBUG stream_writer.py:3384 pending_option[WILL + NAWS] = False
DEBUG stream_writer.py:773 recv IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:2045 handle_will(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DO MXP
DEBUG stream_writer.py:1887 handle_do(MXP)
DEBUG stream_writer.py:998 skip WILL MXP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSSP
DEBUG stream_writer.py:2045 handle_will(MSSP)
DEBUG stream_writer.py:998 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:773 recv IAC WILL ZMP
DEBUG stream_writer.py:2045 handle_will(ZMP)
DEBUG stream_writer.py:998 skip DO ZMP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[ZMP] = True
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:773 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1887 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:1024 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3384 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:773 recv IAC DONT MSDP
DEBUG stream_writer.py:2010 handle_dont(MSDP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:3384 local_option[MSDP] = False
DEBUG stream_writer.py:773 recv IAC DONT ZMP
DEBUG stream_writer.py:2010 handle_dont(ZMP)
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3384 local_option[ZMP] = False
DEBUG stream_writer.py:773 recv IAC DONT MSP
DEBUG stream_writer.py:2010 handle_dont(MSP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:3384 local_option[MSP] = False
DEBUG stream_writer.py:773 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:2010 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3384 local_option[AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC DONT ATCP
DEBUG stream_writer.py:2010 handle_dont(ATCP)
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3384 local_option[ATCP] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DONT GMCP
DEBUG stream_writer.py:2010 handle_dont(GMCP)
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:3384 local_option[GMCP] = False
DEBUG stream_writer.py:773 recv IAC DONT MSSP
DEBUG stream_writer.py:2010 handle_dont(MSSP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:3384 local_option[MSSP] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP2_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP2_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WONT MSDP
DEBUG stream_writer.py:2199 handle_wont(MSDP)
DEBUG stream_writer.py:3384 remote_option[MSDP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:773 recv IAC WONT MSP
DEBUG stream_writer.py:2199 handle_wont(MSP)
DEBUG stream_writer.py:3384 remote_option[MSP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = False
DEBUG stream_writer.py:773 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2199 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3384 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC WONT ATCP
DEBUG stream_writer.py:2199 handle_wont(ATCP)
DEBUG stream_writer.py:3384 remote_option[ATCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:773 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WONT GMCP
DEBUG stream_writer.py:2199 handle_wont(GMCP)
DEBUG stream_writer.py:3384 remote_option[GMCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WONT MXP
DEBUG stream_writer.py:2199 handle_wont(MXP)
DEBUG stream_writer.py:3384 remote_option[MXP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'NAME': 'Nanvaent', 'PLAYERS': '10', 'UPTIME': '1771879512'}
DEBUG stream_writer.py:767 begin sub-negotiation SB MCCP_COMPRESS
WARNING stream_writer.py:745 sub-negotiation SB MCCP_COMPRESS (6 bytes) interrupted by IAC RSP
DEBUG stream_writer.py:732 IAC RCTE: not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC b'K': not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC RCTE: not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC b'K': not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC NAOFFD: not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC SE: not a legal 2-byte cmd, treating as data
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'SB TTYPE, SB NEW_ENVIRON'
DEBUG client_base.py:93 EOF from server, closing.
INFO client_base.py:122 Connection closed to <Peer 207.162.200.121 23>
DEBUG fingerprinting.py:849 connection for server fingerprint d829a62e22869ca7

Nanvaent (nanvaent.org:3000)

Connection Banner:

KK HS=O0#?J\`P 1 "u@bW ʿ8mfd%{^lEëV BqTm\*M,a̐_u4ϣH5] âXcX y\`![4Xș 4g8r3Do[؉~G8c4 NV /yuφ: Q Ftzᗻ$@ws{et>ԠaDdz\*# v_Ξ_J+؟iRw Uy܊Y)꣯?hZEJ.d?f\`5 viܓls \*_dzڀXOJUHJLV()29O

This banner is more than 99% similar to 1 other server:

Server URLs

Server Info

  • Players online: 10 [2]

  • Uptime: 42 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: No

  • MCCP2: Negotiated

  • MXP: Negotiated

  • MSP: No

  • MCP: No

  • ZMP: Negotiated

Telnet Fingerprint

d829a62e22869ca7

This fingerprint is shared by 3 other servers.

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

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

Show JSON
{
  "server-probe": {
    "fingerprint": "d829a62e22869ca7",
    "fingerprint-data": {
      "offered-options": [],
      "probed-protocol": "server",
      "refused-options": [],
      "requested-options": [
        "MXP",
        "NAWS",
        "NEW_ENVIRON",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "\nO\udccd\udcc9\udcd1\u0001\udce9JUHJL\udcceV(\u0006\udcb1\udcf2\udc81\udce6\u0015)\udc94\u0000\udc9d\u000329O\udc91\udc97\u000b\u0000\u0000\u0000\udcff",
      "banner_before_return": "\udcec\u0007\u0000\u0000\u0000\u0000\udcff\udcfa\udcc7\u0015\u0000\u0000\u0000\udcff\udcfaK\udc82\udcf1\u0007\u0000\u0000\u0000\u0000\udcff\udcfaK\u001dH\u0002\u0000\u0000\u0000\udcff\udcb4S=O\udcc30\u0010\udcdd#\udce5?\udc9c\udcba\u0014\udc86\udcf6\udcf6J\udc95`\udcc8\udcc6P\t1 \udc8c\"\udcb7u\udc93@bW\udc89\r\udcca\udcbf\udcc7\udce78\udcc5m\u0003f\udce1d%\udcbe\udc8f\udcf7\udcec{\udcb6\udcd3\u0004^\udcd6\udceb\udcf5\udce2\udcccl\udce0\u0015\udcb2E\udcc3\udcab\u001aV \udcb9\udcfc\udce0B\udcea\udcbbq\udcb2Tm\udcf1\u0003*M,a\udccc\udc90\udcb9_\udcbc\u0012\u0001\udcd8u4\udccf\udca3H\udca45\udcd8\u0014]\f\udc8a\udcc3\udca2\udc97X\udcebc\u0004\udcea\udc90\u0013X\u001c\udc90y`\udcce\udcf1![\udc90\udce3\udce0\u00104\udcc8X\udce0\u0015\udcc8\udc99\udca5\udcbb\t\u0013\udce3\udcba4g\udc83\udce3\udc9b8\udc85r\u00183Do\udca9\u0002\udcea[\udcdf\udcd8\udc89\udc93\udcb9~G\udcd88\udc88\udcee\u0014\udca2\udced\udc8d\u0019\udcf7\udcb9\udce0\udcfa\udce6c4\udc90\r\u001d\u0005N\u0010\udca2V\udc87\f\udced\u000f/y\udca6u\u000e\udccf\udc86\u0005:\r\udce3Q\u001e\udcf3\udcd4\t\udc98\u0017Ftz\u000e\udcd5\udce1\udc97\udcbb\udce7$@ws{e\udce0\udccdt\u001a>\udcb9\udcd4\udca0\udc95\u0017\u0017a\u0002Dd\udc84\udca9\udc95z\u0007\udcde*#\udcf7\udccb\udcc8\rv\udca7\udce5_\udc93\u0016\udcb5\u0014\u001a\udcce\udc9e_\udcd4J\udcad\udc8f+\udcc4\u0010\udc84\udcf0\udcd8\udc9f\udc95i\udca1\udcad\udc8aRw\udcd0\udcf0\u001e\udcb6\u0002\udcf6U\udcb7\udcaby\udcd5\b\udcdb\udce4\udca6\u0016\udcdc\udc8a\udcab\udcfb\udca3\udc80Y)\udcea\udca3\udcaf\udc9d\u0001?h\udcd1ZE\udc8aJ.\udcd3d\udcf3\udc90\udcdd?f`\udca8\udcb6\udcb4\udc87\udcb15\udcc5\u001cv\udcaai\udcb8\udcdc\udc93\udcb8\udcb6\u000el\udcacs\udcb2\u001f*\udcab_\udc9ad\udc92\u0018z\udcda\udc80\udce4\udc8dX\udcc1\u0017\u0000\u0000\u0000\udcff",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "ascii",
      "mssp": {
        "NAME": "Nanvaent",
        "PLAYERS": "10",
        "UPTIME": "1771879512"
      },
      "option_states": {
        "server_offered": {
          "AARDWOLF": false,
          "ATCP": false,
          "GMCP": false,
          "MCCP2": true,
          "MCCP3": false,
          "MSP": false,
          "MSSP": true,
          "MXP": false,
          "ZMP": true
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "GMCP": false,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": true,
          "NAWS": true,
          "NEW_ENVIRON": true,
          "TTYPE": true,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.0,
        "total": 5.589430332183838
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-03-07T03:58:48.024432+00:00",
      "host": "nanvaent.org",
      "ip": "207.162.200.121",
      "port": 3000
    },
    {
      "connected": "2026-04-07T07:22:02.481678+00:00",
      "host": "nanvaent.org",
      "ip": "207.162.200.121",
      "port": 3000
    }
  ]
}

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 nanvaent.org 3000
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=nanvaent.org port=3000
INFO client_base.py:190 Connected to <Peer 207.162.200.121 3000>
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:773 recv IAC DO TTYPE
DEBUG stream_writer.py:1887 handle_do(TTYPE)
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:1024 send IAC WILL TTYPE
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3384 local_option[TTYPE] = True
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:773 recv IAC DO NAWS
DEBUG stream_writer.py:1887 handle_do(NAWS)
DEBUG stream_writer.py:3384 pending_option[WILL + NAWS] = True
DEBUG stream_writer.py:1024 send IAC WILL NAWS
DEBUG stream_writer.py:2507 send IAC SB NAWS (rows=25, cols=80) IAC SE
DEBUG stream_writer.py:3384 local_option[NAWS] = True
DEBUG stream_writer.py:3384 pending_option[WILL + NAWS] = False
DEBUG stream_writer.py:773 recv IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:2045 handle_will(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DO MXP
DEBUG stream_writer.py:1887 handle_do(MXP)
DEBUG stream_writer.py:998 skip WILL MXP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSSP
DEBUG stream_writer.py:2045 handle_will(MSSP)
DEBUG stream_writer.py:998 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:773 recv IAC WILL ZMP
DEBUG stream_writer.py:2045 handle_will(ZMP)
DEBUG stream_writer.py:998 skip DO ZMP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[ZMP] = True
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:773 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1887 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:1024 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3384 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:773 recv IAC DONT MSP
DEBUG stream_writer.py:2010 handle_dont(MSP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:3384 local_option[MSP] = False
DEBUG stream_writer.py:773 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:2010 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3384 local_option[AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC DONT GMCP
DEBUG stream_writer.py:2010 handle_dont(GMCP)
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:3384 local_option[GMCP] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DONT ATCP
DEBUG stream_writer.py:2010 handle_dont(ATCP)
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3384 local_option[ATCP] = False
DEBUG stream_writer.py:773 recv IAC DONT MSSP
DEBUG stream_writer.py:2010 handle_dont(MSSP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:3384 local_option[MSSP] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP2_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP2_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DONT ZMP
DEBUG stream_writer.py:2010 handle_dont(ZMP)
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3384 local_option[ZMP] = False
DEBUG stream_writer.py:773 recv IAC DONT MSDP
DEBUG stream_writer.py:2010 handle_dont(MSDP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:3384 local_option[MSDP] = False
DEBUG stream_writer.py:773 recv IAC WONT MXP
DEBUG stream_writer.py:2199 handle_wont(MXP)
DEBUG stream_writer.py:3384 remote_option[MXP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG stream_writer.py:773 recv IAC WONT MSP
DEBUG stream_writer.py:2199 handle_wont(MSP)
DEBUG stream_writer.py:3384 remote_option[MSP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = False
DEBUG stream_writer.py:773 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2199 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3384 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC WONT GMCP
DEBUG stream_writer.py:2199 handle_wont(GMCP)
DEBUG stream_writer.py:3384 remote_option[GMCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WONT ATCP
DEBUG stream_writer.py:2199 handle_wont(ATCP)
DEBUG stream_writer.py:3384 remote_option[ATCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'NAME': 'Nanvaent', 'PLAYERS': '10', 'UPTIME': '1771879512'}
DEBUG stream_writer.py:767 begin sub-negotiation SB MCCP_COMPRESS
WARNING stream_writer.py:745 sub-negotiation SB MCCP_COMPRESS (6 bytes) interrupted by IAC RSP
DEBUG stream_writer.py:732 IAC RCTE: not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC b'\xc7': not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC b'K': not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC RCTE: not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC b'K': not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC NAOFFD: not a legal 2-byte cmd, treating as data
DEBUG stream_writer.py:732 IAC SE: not a legal 2-byte cmd, treating as data
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'DO MSDP, SB TTYPE, SB NEW_ENVIRON'
DEBUG client_base.py:93 EOF from server, closing.
INFO client_base.py:122 Connection closed to <Peer 207.162.200.121 3000>
DEBUG fingerprinting.py:849 connection for server fingerprint d829a62e22869ca7