bbs.trod.org:23

Connection Banner:

Debian GNU/Linux 11 MBSE BBS v1.0.7.22-ksb (Release: Oct 21 2021) Copyright (C) 1997-2021 MBSE Development Team, All Rights Reserved .​--. Welcome to The Realm of Darkness BBS \|o_o \| -​-------------------------------------- \|:_/ \| // \\ \\ Abandon all hope ye who have entered cyberspace. (\| \| ) /'\\_ _/\`\\ \\___)=(___/ Powered by Linux. The BBS software has been totally changed, but the look and feel should be almost exactly the same. The main difference is that you may need to re- create your account if I havn't gotten around to doing it yet. If something doesn't work, leave me a message on the BBS, or email me at johann@trod.org login:

Server URLs

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

Listing

  • BBS Name: Realm of Darkness (from listing)

  • Listed Location: Phoenix, AZ, USA

BBS Software

Reported: MBSE

Encoding

  • Effective encoding: ascii

  • Scanner detected: cp437

Telnet Fingerprint

3368c85b2d113f3c

This fingerprint is shared by 20 other servers.

Options offered by server: BINARY, ECHO, SGA, STATUS

Options requested from client: ECHO, LFLOW, NAWS, NEW_ENVIRON, TSPEED, TTYPE, XDISPLOC

The complete JSON record collected during the scan, including Telnet negotiation results and banner data.

Show JSON
{
  "server-probe": {
    "fingerprint": "3368c85b2d113f3c",
    "fingerprint-data": {
      "offered-options": [
        "BINARY",
        "ECHO",
        "SGA",
        "STATUS"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "CHARSET",
        "COM_PORT",
        "EOR",
        "GMCP",
        "MCCP2",
        "MCCP3",
        "MSDP",
        "MSP",
        "MSSP",
        "MXP",
        "ZMP"
      ],
      "requested-options": [
        "ECHO",
        "LFLOW",
        "NAWS",
        "NEW_ENVIRON",
        "TSPEED",
        "TTYPE",
        "XDISPLOC"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "\r\n\r\n      .--.             Welcome to The Realm of Darkness  BBS\r\n     |o_o |           ---------------------------------------\r\n     |:_/ |\r\n    //   \\ \\   Abandon all hope ye who have entered cyberspace.\r\n   (|     | )\r\n  /'\\_   _/`\\\r\n  \\___)=(___/\r\nPowered by Linux.\r\n\r\nThe BBS software has been totally changed, but the look and feel should be\r\nalmost exactly the same.  The main difference is that you may need to re-\r\ncreate your account if I havn't gotten around to doing it yet.\r\n\r\nIf something doesn't work, leave me a message on the BBS, or email me at\r\njohann@trod.org\r\n\r\nlogin: ",
      "banner_before_return": "Debian GNU/Linux 11\r\n\r\nMBSE BBS v1.0.7.22-ksb (Release: Oct 21 2021)\r\nCopyright (C) 1997-2021 MBSE Development Team, All Rights Reserved\r\n\r\n\r\n      .--.             Welcome to The Realm of Darkness  BBS\r\n     |o_o |           ---------------------------------------\r\n     |:_/ |\r\n    //   \\ \\   Abandon all hope ye who have entered cyberspace.\r\n   (|     | )\r\n  /'\\_   _/`\\\r\n  \\___)=(___/\r\nPowered by Linux.\r\n\r\nThe BBS software has been totally changed, but the look and feel should be\r\nalmost exactly the same.  The main difference is that you may need to re-\r\ncreate your account if I havn't gotten around to doing it yet.\r\n\r\nIf something doesn't work, leave me a message on the BBS, or email me at\r\njohann@trod.org\r\n\r\nlogin: ",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "cp437",
      "option_states": {
        "environ_requested": [
          {
            "name": "*",
            "type": "VAR"
          },
          {
            "name": "*",
            "type": "USERVAR"
          }
        ],
        "server_offered": {
          "AARDWOLF": false,
          "ATCP": false,
          "ECHO": true,
          "GMCP": false,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": false,
          "SGA": true,
          "STATUS": true,
          "ZMP": false
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "AUTHENTICATION": false,
          "ECHO": true,
          "GMCP": false,
          "LFLOW": true,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": false,
          "NAWS": true,
          "NEW_ENVIRON": true,
          "TSPEED": true,
          "TTYPE": true,
          "XDISPLOC": true,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.20197844505310059,
        "total": 11.302211284637451
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-03-07T04:14:06.780168+00:00",
      "host": "bbs.trod.org",
      "ip": "45.33.86.113",
      "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 bbs.trod.org 23
Show Logfile
DEBUG client.py:1193 Fingerprint client: host=bbs.trod.org port=23
INFO client_base.py:186 Connected to <Peer 45.33.86.113 23>
DEBUG stream_writer.py:3330 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1019 send IAC WILL MXP
DEBUG stream_writer.py:3330 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1019 send IAC WILL ATCP
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3330 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1019 send IAC WILL GMCP
DEBUG stream_writer.py:3330 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1019 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3330 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1019 send IAC WILL MSP
DEBUG stream_writer.py:3330 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1019 send IAC WILL MSDP
DEBUG stream_writer.py:3330 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1019 send IAC WILL MSSP
DEBUG stream_writer.py:3330 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1019 send IAC WILL ZMP
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3330 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1019 send IAC DO MXP
DEBUG stream_writer.py:3330 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1019 send IAC DO ATCP
DEBUG stream_writer.py:3330 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3330 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1019 send IAC DO GMCP
DEBUG stream_writer.py:3330 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1019 send IAC DO AARDWOLF
DEBUG stream_writer.py:3330 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1019 send IAC DO MSP
DEBUG stream_writer.py:3330 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1019 send IAC DO MSDP
DEBUG stream_writer.py:3330 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1019 send IAC DO MSSP
DEBUG stream_writer.py:3330 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1019 send IAC DO ZMP
DEBUG stream_writer.py:3330 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:768 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1836 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3330 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:1019 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3330 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3330 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3330 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:768 recv IAC DONT MXP
DEBUG stream_writer.py:1959 handle_dont(MXP)
DEBUG stream_writer.py:3330 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:3330 local_option[MXP] = False
DEBUG stream_writer.py:768 recv IAC DONT ATCP
DEBUG stream_writer.py:1959 handle_dont(ATCP)
DEBUG stream_writer.py:3330 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3330 local_option[ATCP] = False
DEBUG stream_writer.py:768 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:1959 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3330 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC DONT GMCP
DEBUG stream_writer.py:1959 handle_dont(GMCP)
DEBUG stream_writer.py:3330 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:3330 local_option[GMCP] = False
DEBUG stream_writer.py:768 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:1959 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3330 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3330 local_option[AARDWOLF] = False
DEBUG stream_writer.py:768 recv IAC DONT MSP
DEBUG stream_writer.py:1959 handle_dont(MSP)
DEBUG stream_writer.py:3330 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:3330 local_option[MSP] = False
DEBUG stream_writer.py:768 recv IAC DONT MSDP
DEBUG stream_writer.py:1959 handle_dont(MSDP)
DEBUG stream_writer.py:3330 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:3330 local_option[MSDP] = False
DEBUG stream_writer.py:768 recv IAC DONT MSSP
DEBUG stream_writer.py:1959 handle_dont(MSSP)
DEBUG stream_writer.py:3330 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:3330 local_option[MSSP] = False
DEBUG stream_writer.py:768 recv IAC DONT ZMP
DEBUG stream_writer.py:1959 handle_dont(ZMP)
DEBUG stream_writer.py:3330 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3330 local_option[ZMP] = False
DEBUG stream_writer.py:768 recv IAC DONT MCCP2_COMPRESS
DEBUG stream_writer.py:1959 handle_dont(MCCP2_COMPRESS)
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:3330 local_option[MCCP2_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC WONT MXP
DEBUG stream_writer.py:2148 handle_wont(MXP)
DEBUG stream_writer.py:3330 remote_option[MXP] = False
DEBUG stream_writer.py:3330 pending_option[DO + MXP] = False
DEBUG stream_writer.py:768 recv IAC WONT ATCP
DEBUG stream_writer.py:2148 handle_wont(ATCP)
DEBUG stream_writer.py:3330 remote_option[ATCP] = False
DEBUG stream_writer.py:3330 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:768 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2148 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3330 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3330 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC WONT GMCP
DEBUG stream_writer.py:2148 handle_wont(GMCP)
DEBUG stream_writer.py:3330 remote_option[GMCP] = False
DEBUG stream_writer.py:3330 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:768 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2148 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3330 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3330 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:768 recv IAC WONT MSP
DEBUG stream_writer.py:2148 handle_wont(MSP)
DEBUG stream_writer.py:3330 remote_option[MSP] = False
DEBUG stream_writer.py:3330 pending_option[DO + MSP] = False
DEBUG stream_writer.py:768 recv IAC WONT MSDP
DEBUG stream_writer.py:2148 handle_wont(MSDP)
DEBUG stream_writer.py:3330 remote_option[MSDP] = False
DEBUG stream_writer.py:3330 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:768 recv IAC WONT MSSP
DEBUG stream_writer.py:2148 handle_wont(MSSP)
DEBUG stream_writer.py:3330 remote_option[MSSP] = False
DEBUG stream_writer.py:3330 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:768 recv IAC WONT ZMP
DEBUG stream_writer.py:2148 handle_wont(ZMP)
DEBUG stream_writer.py:3330 remote_option[ZMP] = False
DEBUG stream_writer.py:3330 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:768 recv IAC WONT MCCP2_COMPRESS
DEBUG stream_writer.py:2148 handle_wont(MCCP2_COMPRESS)
DEBUG stream_writer.py:3330 remote_option[MCCP2_COMPRESS] = False
DEBUG stream_writer.py:3330 pending_option[DO + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:762 begin sub-negotiation SB NEW_ENVIRON
DEBUG stream_writer.py:749 sub-negotiation cmd NEW_ENVIRON SE completion byte
DEBUG stream_writer.py:3330 pending_option[SB + NEW_ENVIRON] = False
DEBUG stream_writer.py:2398 recv NEW_ENVIRON SEND (all)
DEBUG stream_writer.py:2419 env send: LANG='C', TERM='xterm-256color', LINES=25, COLUMNS=80, COLORTERM=''
DEBUG client_base.py:496 negotiation complete after 0.65s.
DEBUG stream_writer.py:768 recv IAC DO AUTHENTICATION
DEBUG stream_writer.py:1836 handle_do(AUTHENTICATION)
DEBUG stream_writer.py:1944 DO AUTHENTICATION not supported.
DEBUG stream_writer.py:3330 local_option[AUTHENTICATION] = False
DEBUG stream_writer.py:1019 send IAC WONT AUTHENTICATION
DEBUG stream_writer.py:768 recv IAC DO TTYPE
DEBUG stream_writer.py:1836 handle_do(TTYPE)
DEBUG stream_writer.py:3330 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:1019 send IAC WILL TTYPE
DEBUG stream_writer.py:3330 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3330 local_option[TTYPE] = True
DEBUG stream_writer.py:3330 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:768 recv IAC DO TSPEED
DEBUG stream_writer.py:1836 handle_do(TSPEED)
DEBUG stream_writer.py:3330 pending_option[WILL + TSPEED] = True
DEBUG stream_writer.py:1019 send IAC WILL TSPEED
DEBUG stream_writer.py:3330 pending_option[SB + TSPEED] = True
DEBUG stream_writer.py:3330 local_option[TSPEED] = True
DEBUG stream_writer.py:3330 pending_option[WILL + TSPEED] = False
DEBUG stream_writer.py:768 recv IAC DO XDISPLOC
DEBUG stream_writer.py:1836 handle_do(XDISPLOC)
DEBUG stream_writer.py:3330 pending_option[WILL + XDISPLOC] = True
DEBUG stream_writer.py:1019 send IAC WILL XDISPLOC
DEBUG stream_writer.py:3330 pending_option[SB + XDISPLOC] = True
DEBUG stream_writer.py:3330 local_option[XDISPLOC] = True
DEBUG stream_writer.py:3330 pending_option[WILL + XDISPLOC] = False
DEBUG stream_writer.py:762 begin sub-negotiation SB TSPEED
DEBUG stream_writer.py:749 sub-negotiation cmd TSPEED SE completion byte
DEBUG stream_writer.py:3330 pending_option[SB + TSPEED] = False
DEBUG stream_writer.py:2294 recv TSPEED SEND: b''
DEBUG stream_writer.py:2322 send: IAC SB TSPEED IS b'38400',b'38400' IAC SE
DEBUG stream_writer.py:762 begin sub-negotiation SB XDISPLOC
DEBUG stream_writer.py:749 sub-negotiation cmd XDISPLOC SE completion byte
DEBUG stream_writer.py:3330 pending_option[SB + XDISPLOC] = False
DEBUG stream_writer.py:2333 recv XDISPLOC SEND: b''
DEBUG stream_writer.py:2342 send IAC SB XDISPLOC IS b'' IAC SE
DEBUG stream_writer.py:762 begin sub-negotiation SB NEW_ENVIRON
DEBUG stream_writer.py:749 sub-negotiation cmd NEW_ENVIRON SE completion byte
DEBUG stream_writer.py:2187 [SB + NEW_ENVIRON] unsolicited
DEBUG stream_writer.py:2398 recv NEW_ENVIRON SEND (all)
DEBUG stream_writer.py:2419 env send: LANG='C', TERM='xterm-256color', LINES=25, COLUMNS=80, COLORTERM=''
DEBUG stream_writer.py:762 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:749 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3330 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2353 recv TTYPE SEND: b''
DEBUG stream_writer.py:2365 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:768 recv IAC WILL SGA
DEBUG stream_writer.py:784 WILL SGA unsolicited
DEBUG stream_writer.py:1994 handle_will(SGA)
DEBUG stream_writer.py:3330 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1019 send IAC DO SGA
DEBUG stream_writer.py:3330 remote_option[SGA] = True
DEBUG stream_writer.py:3330 pending_option[DO + SGA] = False
DEBUG stream_writer.py:768 recv IAC DO ECHO
DEBUG stream_writer.py:1836 handle_do(ECHO)
DEBUG stream_writer.py:3330 local_option[ECHO] = False
DEBUG stream_writer.py:1019 send IAC WONT ECHO
DEBUG stream_writer.py:3330 local_option[ECHO] = True
DEBUG stream_writer.py:768 recv IAC DO NAWS
DEBUG stream_writer.py:1836 handle_do(NAWS)
DEBUG stream_writer.py:3330 pending_option[WILL + NAWS] = True
DEBUG stream_writer.py:1019 send IAC WILL NAWS
DEBUG stream_writer.py:2453 send IAC SB NAWS (rows=25, cols=80) IAC SE
DEBUG stream_writer.py:3330 local_option[NAWS] = True
DEBUG stream_writer.py:3330 pending_option[WILL + NAWS] = False
DEBUG stream_writer.py:768 recv IAC WILL STATUS
DEBUG stream_writer.py:784 WILL STATUS unsolicited
DEBUG stream_writer.py:1994 handle_will(STATUS)
DEBUG stream_writer.py:3330 remote_option[STATUS] = True
DEBUG stream_writer.py:1110 send IAC SB STATUS SEND IAC SE
DEBUG stream_writer.py:3330 pending_option[SB + STATUS] = True
DEBUG stream_writer.py:768 recv IAC DO LFLOW
DEBUG stream_writer.py:1836 handle_do(LFLOW)
DEBUG stream_writer.py:3330 pending_option[WILL + LFLOW] = True
DEBUG stream_writer.py:1019 send IAC WILL LFLOW
DEBUG stream_writer.py:3330 pending_option[SB + LFLOW] = True
DEBUG stream_writer.py:3330 local_option[LFLOW] = True
DEBUG stream_writer.py:3330 pending_option[WILL + LFLOW] = False
DEBUG stream_writer.py:768 recv IAC WILL ECHO
DEBUG stream_writer.py:784 WILL ECHO unsolicited
DEBUG stream_writer.py:1994 handle_will(ECHO)
DEBUG stream_writer.py:3330 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:1019 send IAC DO ECHO
DEBUG stream_writer.py:3330 remote_option[ECHO] = True
DEBUG stream_writer.py:3330 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:3330 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1019 send IAC DO BINARY
DEBUG stream_writer.py:3330 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1019 send IAC DO CHARSET
DEBUG stream_writer.py:3330 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1019 send IAC DO EOR
DEBUG stream_writer.py:3330 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1019 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:768 recv IAC WILL BINARY
DEBUG stream_writer.py:1994 handle_will(BINARY)
DEBUG stream_writer.py:993 skip DO BINARY; pending_option = True
DEBUG stream_writer.py:3330 remote_option[BINARY] = True
DEBUG stream_writer.py:3330 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:768 recv IAC WONT CHARSET
DEBUG stream_writer.py:2148 handle_wont(CHARSET)
DEBUG stream_writer.py:3330 remote_option[CHARSET] = False
DEBUG stream_writer.py:3330 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:768 recv IAC WONT EOR
DEBUG stream_writer.py:2148 handle_wont(EOR)
DEBUG stream_writer.py:3330 remote_option[EOR] = False
DEBUG stream_writer.py:3330 pending_option[DO + EOR] = False
DEBUG stream_writer.py:768 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2148 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3330 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3330 pending_option[DO + COM_PORT_OPTION] = False
INFO fingerprinting.py:755 connection for server fingerprint 3368c85b2d113f3c
INFO client_base.py:118 Connection closed to <Peer 45.33.86.113 23>