tdod.org

tdod.org:4000

Telnet Fingerprint

c2dd7d4e76383b41…

This fingerprint is shared by 56 other servers.

Data source: c2dd7d4e76383b41/349eb9dce4d8ec8f.json

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

{
  "server-probe": {
    "fingerprint": "c2dd7d4e76383b41",
    "fingerprint-data": {
      "offered-options": [],
      "probed-protocol": "server",
      "refused-options": [],
      "requested-options": [],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "",
      "banner_before_return": "\n\r         -|\n\r           A                     .:::.:::.\n\r          /.\\..              ...':::::::.:::.\n\r     -|.:[\"\"M#:::....     ..::::::::::::::::::::.....\n\r      A   | #        .:::..                 s8888a\n\r     /.\\ [\"\"M#                             888PPI::::...::..\n\r    [\"\"M# | #  U\"U#U           ....:::::::::PPP8888\n\r     | #  | #  \\ .:/                       \"Y8888P  SMAUG 1.0 written by:\n\r     | #  | #___| #      __ \\   _ \\  __ \\            Thoric, Altrag, Blodkai,\n\r     | \"--'     .-\"      |   | (   | |   |           Narn, Haus, Scryn,\n\r   |\"-\"-\"-\"-\"-#-#-##    ____/ \\___/ ____/            Swordbearer, Rennard,\n\r   |     # ## ######                                 Tricops, and Gorog\n\r    \\       .::::'/     Dawn of Demise...           MERC 2.1 written by:\n\r     \\      ::::'/                                   Hatchet, Furey, and Kahn\n\r   :8a|    # # ##                                   DikuMUD written by:\n\r   ::88a      ###                                    Hans Staerfeldt,\n\r  ::::888a  8a ##::.                                 Katja Nyboe,\n\r ::::::::aSUNDOGa8a::::. ..              ... ..      Tom Madsen,\n\r :::::8:::8888:Y8888:::::::::...       .:::::::::... Michael Seifert,\n\r:::::88::::888::8888a::::::::::::.    .::::::::::::: Sebastian Hammer\n\r::'::888::::888::Y88a______________________________________________________\n\r:: :::888a::::88a:Y88a                                  __---__-- __\n\r' .: ::Y88a:::::8a:Y88a                            __----_-- -------_-__\n\rDoD is currently being written and developed by the DoD staff.\n\rFor questions or concerns, contact :\n\r  Implementor  : Minex (rkinney -at- tdod.org)\n\r  Head Coder   : Gangien\n\r\n\rEnter your character's name or type NEW: ",
      "encoding": "ascii",
      "option_states": {
        "server_offered": {},
        "server_requested": {}
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.0,
        "total": 2.7982468605041504
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-02-08T17:20:01.193360+00:00",
      "host": "tdod.org",
      "ip": "98.50.23.19",
      "port": 4000
    }
  ]
}

Connection Log

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

DEBUG client.py:770 Fingerprint client: host=tdod.org port=3000
INFO client_base.py:174 Connected to <Peer 98.50.23.19 3000>
DEBUG stream_writer.py:692 recv IAC DO SGA
DEBUG stream_writer.py:1733 handle_do(SGA)
DEBUG stream_writer.py:3030 pending_option[WILL + SGA] = True
DEBUG stream_writer.py:933 send IAC WILL SGA
DEBUG stream_writer.py:3030 local_option[SGA] = True
DEBUG stream_writer.py:3030 pending_option[WILL + SGA] = False
DEBUG stream_writer.py:692 recv IAC WILL SGA
DEBUG stream_writer.py:708 WILL SGA unsolicited
DEBUG stream_writer.py:1863 handle_will(SGA)
DEBUG stream_writer.py:3030 pending_option[DO + SGA] = True
DEBUG stream_writer.py:933 send IAC DO SGA
DEBUG stream_writer.py:3030 remote_option[SGA] = True
DEBUG stream_writer.py:3030 pending_option[DO + SGA] = False
DEBUG stream_writer.py:692 recv IAC DONT ECHO
DEBUG stream_writer.py:1826 handle_dont(ECHO)
DEBUG stream_writer.py:3030 pending_option[WILL + ECHO] = False
DEBUG stream_writer.py:3030 local_option[ECHO] = False
DEBUG stream_writer.py:692 recv IAC WILL ECHO
DEBUG stream_writer.py:708 WILL ECHO unsolicited
DEBUG stream_writer.py:1863 handle_will(ECHO)
DEBUG stream_writer.py:3030 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:933 send IAC DO ECHO
DEBUG stream_writer.py:3030 remote_option[ECHO] = True
DEBUG stream_writer.py:3030 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:692 recv IAC DO BINARY
DEBUG stream_writer.py:1733 handle_do(BINARY)
DEBUG stream_writer.py:3030 pending_option[WILL + BINARY] = True
DEBUG stream_writer.py:933 send IAC WILL BINARY
DEBUG stream_writer.py:3030 local_option[BINARY] = True
DEBUG stream_writer.py:3030 pending_option[WILL + BINARY] = False
DEBUG stream_writer.py:692 recv IAC WILL BINARY
DEBUG stream_writer.py:708 WILL BINARY unsolicited
DEBUG stream_writer.py:1863 handle_will(BINARY)
DEBUG stream_writer.py:3030 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:933 send IAC DO BINARY
DEBUG stream_writer.py:3030 remote_option[BINARY] = True
DEBUG stream_writer.py:3030 pending_option[DO + BINARY] = False
DEBUG client_base.py:460 negotiation complete after 2.01s.
DEBUG stream_writer.py:3030 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:933 send IAC DO STATUS
DEBUG stream_writer.py:3030 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:933 send IAC DO CHARSET
DEBUG stream_writer.py:3030 pending_option[DO + EOR] = True
DEBUG stream_writer.py:933 send IAC DO EOR
DEBUG stream_writer.py:3030 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:933 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:3030 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:933 send IAC DO GMCP
DEBUG stream_writer.py:3030 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:933 send IAC DO MSDP
DEBUG stream_writer.py:3030 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:933 send IAC DO MSSP
DEBUG stream_writer.py:3030 pending_option[DO + MSP] = True
DEBUG stream_writer.py:933 send IAC DO MSP
DEBUG stream_writer.py:3030 pending_option[DO + MXP] = True
DEBUG stream_writer.py:933 send IAC DO MXP
DEBUG stream_writer.py:3030 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:933 send IAC DO ZMP
DEBUG stream_writer.py:3030 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:933 send IAC DO AARDWOLF
DEBUG stream_writer.py:3030 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:933 send IAC DO ATCP
DEBUG stream_writer.py:692 recv IAC WONT STATUS
DEBUG stream_writer.py:1985 handle_wont(STATUS)
DEBUG stream_writer.py:3030 remote_option[STATUS] = False
DEBUG stream_writer.py:3030 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:692 recv IAC WONT CHARSET
DEBUG stream_writer.py:1985 handle_wont(CHARSET)
DEBUG stream_writer.py:3030 remote_option[CHARSET] = False
DEBUG stream_writer.py:3030 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:692 recv IAC WONT EOR
DEBUG stream_writer.py:1985 handle_wont(EOR)
DEBUG stream_writer.py:3030 remote_option[EOR] = False
DEBUG stream_writer.py:3030 pending_option[DO + EOR] = False
DEBUG stream_writer.py:692 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:1985 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3030 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3030 pending_option[DO + COM_PORT_OPTION] = False
DEBUG stream_writer.py:692 recv IAC WONT GMCP
DEBUG stream_writer.py:1985 handle_wont(GMCP)
DEBUG stream_writer.py:3030 remote_option[GMCP] = False
DEBUG stream_writer.py:3030 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:692 recv IAC WONT MSDP
DEBUG stream_writer.py:1985 handle_wont(MSDP)
DEBUG stream_writer.py:3030 remote_option[MSDP] = False
DEBUG stream_writer.py:3030 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:692 recv IAC WONT MSSP
DEBUG stream_writer.py:1985 handle_wont(MSSP)
DEBUG stream_writer.py:3030 remote_option[MSSP] = False
DEBUG stream_writer.py:3030 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:692 recv IAC WONT MSP
DEBUG stream_writer.py:1985 handle_wont(MSP)
DEBUG stream_writer.py:3030 remote_option[MSP] = False
DEBUG stream_writer.py:3030 pending_option[DO + MSP] = False
DEBUG stream_writer.py:692 recv IAC WONT MXP
DEBUG stream_writer.py:1985 handle_wont(MXP)
DEBUG stream_writer.py:3030 remote_option[MXP] = False
DEBUG stream_writer.py:3030 pending_option[DO + MXP] = False
DEBUG stream_writer.py:692 recv IAC WONT ZMP
DEBUG stream_writer.py:1985 handle_wont(ZMP)
DEBUG stream_writer.py:3030 remote_option[ZMP] = False
DEBUG stream_writer.py:3030 pending_option[DO + ZMP] = False
INFO fingerprinting.py:746 connection for server fingerprint cfa317a91359cb0b
INFO client_base.py:105 Connection closed to <Peer 98.50.23.19 3000>

Generated by telnetlib3-fingerprint

telnetlib3-fingerprint --loglevel=debug tdod.org 4000