75.158.160.164 (joesbbs.com)

joesbbs.com:23

Connection Banner:

Mystic BBS Version 1.12 A49 Copyright (C) 1997-2023 By James Coyle Detecting terminal emulation: ANSI detected. ──┬── ╓──┐ ╥──┐ ╖ ╓─┐ ╓─────┐ ╓──┐ ╓─╥─┐ ╥──┐ ╥ ┬ ╓─╥─┐ ╥──┐ ╥──┐ │ ║ │ ╟─ ╜ ╙─┐ ║ ║ │ ║ ║ │ ╟──┘ ║ │ ║ ╟─ ╟─┬┘ │ ╙──┘ ╨──┘ ╙──┘ ║ ╙──┘ ╨ ╨ ┴ ╨ ╙──┘ ╨ ╨──┘ ╨ ┴ │ ║ ╙───┘ SysOp: Joe Schweier ╙─────┘ │ ╥────┐ ╥────┐ ╓─────┐ AKA IB JOE ┌─┼── ║ │ ║ │ ║ └─┘ ╟────┴┐ ╟────┴┐ ╙─────┐ ║ │ ║ │ │ ▌ ╨─────┘ ╨─────┘ ╙─────┘ Dial Up ▌ ▌ 705.555.1212 ▄▄▌ ▌_​____\\ @Local Date & Time Modem ▄▄▌ ▄▄▄▄[█▌▄▄██▄▄_\\_​____ 04/06/26 at 10:49p USR V.Everything ▄▄▄▌ _​____________________) Node# 1 of 10 Access ▄▄▄▄▄▄▌ ■║██████████████████( Active Nodes:1 Telnet/WWW/FTP ▄▄▄▄▄▄▄▌ ╣██████████████████│ Mystic BBS Location ▀▒▀ ■║█████████ ███████│ @Version:1.12 A49 Edmonton, Ab. Can. ■▒ ╝██████████ ██████│ @Running On:Windows Crystal River, Fl.0▀0▀0 ───▀▀▀▀▀▀▀▀▀▀▀▀▀───└────────────────■ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ [■] Enter your user name: ┌─────────────────────────────────────────────────────────────────────────────┐ │ ▒ Welcome to Mystic BBS Demo System │ └─────────────────────────────────────────────────────────────────────────────┘ The account name you entered was not located in our account database. If you wish to create a new account, answer YES below to continue on to the new account application. If you've mistyped your account name, answer NO and you will be returned to the login prompt. Create an account with this BBS? Yes No

Server URLs

Server Location: 🇨🇦 Canada (GeoIP)

Listing

  • BBS Name: Joe’s Computer BBS (from listing)

  • Listed Location: Edmonton, AB, Canada

BBS Software

Detected: Mystic BBS

Encoding

  • Effective encoding: utf-8

  • Override: utf-8 (from bbslist.txt)

  • Scanner detected: utf-8

Telnet Fingerprint

aac0d9e4a94e81dc

This fingerprint is shared by 186 other servers.

Options offered by server: ECHO, SGA

Options requested from client: BINARY, TTYPE

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

Show JSON
{
  "server-probe": {
    "fingerprint": "aac0d9e4a94e81dc",
    "fingerprint-data": {
      "offered-options": [
        "ECHO",
        "SGA"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "EOR",
        "GMCP",
        "MCCP2",
        "MCCP3",
        "MSDP",
        "MSP",
        "MSSP",
        "MXP",
        "STATUS",
        "ZMP"
      ],
      "requested-options": [
        "BINARY",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "\u001b[40m\r\n\u001b[0;37;40m\u001b[1;1H\u001b[2J\u001b[1;34m\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u001b[0;34;40m\u2510\r\n\u001b[1;34m\u2502\u001b[44m \u2592 \u001b[37mWelcome to Mystic BBS Demo System                                         \u001b[40m\u001b[0;34;40m\u2502\r\n\u001b[1;34m\u2514\u001b[0;34;40m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\r\n\r\n \u001b[37mThe account name you entered was not located in our account database.  If you\r\n wish to create a new account, answer YES below to continue on to the new\r\n account application.  If you've mistyped your account name, answer NO and you\r\n will be returned to the login prompt.\r\n\r\n\u001b[1;31mCreate an account with this BBS? \u001b[36m\u001b[34m Y\u001b[37mes \u001b[34m\u001b[44m N\u001b[37mo \u001b[40m",
      "banner_before_return": "\u001b[?1000h\fMystic BBS Version 1.12 A49\r\nCopyright (C) 1997-2023 By James Coyle\r\n\r\nDetecting terminal emulation: \u001b[s\u001b[255B\u001b[255C\u001b[6n\u001b[uANSI detected.\r\n\u001b[1;1H\u001b[2J\r\n\u001b[0m   \u001b[1;35m\u2500\u2500\u252c\u2500\u2500 \u2553\u2500\u2500\u2510 \u2565\u2500\u2500\u2510 \u2556  \u2553\u2500\u2510   \u2553\u2500\u2500\u2500\u2500\u2500\u2510 \u2553\u2500\u2500\u2510 \u2553\u2500\u2565\u2500\u2510 \u2565\u2500\u2500\u2510 \u2565  \u252c \u2553\u2500\u2565\u2500\u2510 \u2565\u2500\u2500\u2510 \u2565\u2500\u2500\u2510\u001b[0m\r\n     \u001b[35m\u2502   \u2551  \u2502 \u255f\u2500   \u255c  \u2559\u2500\u2510   \u2551\u001b[37m       \u001b[35m\u2551  \u2502 \u2551 \u2551 \u2502 \u255f\u2500\u2500\u2518 \u2551  \u2502   \u2551   \u255f\u2500   \u255f\u2500\u252c\u2518\u001b[37m\r\n     \u2502   \u2559\u2500\u2500\u2518 \u2568\u2500\u2500\u2518   \u2559\u2500\u2500\u2518   \u2551       \u2559\u2500\u2500\u2518 \u2568 \u2568 \u2534 \u2568    \u2559\u2500\u2500\u2518   \u2568   \u2568\u2500\u2500\u2518 \u2568 \u2534\r\n     \u001b[35m\u2502\u001b[37m                      \u001b[35m\u2551\u001b[37m\r\n\u001b[35m \u001b[1m\u2559\u2500\u2500\u2500\u2518 \u001b[33mSysOp\u001b[0m: \u001b[1;32mJoe Schweier  \u001b[35m\u2559\u2500\u2500\u2500\u2500\u2500\u2518\u001b[0m        \u001b[1;35m\u2502\u001b[0m     \u001b[1;35m\u2565\u2500\u2500\u2500\u2500\u2510  \u2565\u2500\u2500\u2500\u2500\u2510  \u2553\u2500\u2500\u2500\u2500\u2500\u2510\u001b[0m\r\n              \u001b[1;36mAKA \u001b[0mIB JOE                 \u001b[35m\u250c\u2500\u253c\u2500\u2500   \u2551    \u2502  \u2551    \u2502  \u2551\u001b[37m\r\n                                         \u2514\u2500\u2518     \u255f\u2500\u2500\u2500\u2500\u2534\u2510 \u255f\u2500\u2500\u2500\u2500\u2534\u2510 \u2559\u2500\u2500\u2500\u2500\u2500\u2510\r\n                                                 \u001b[35m\u2551\u001b[37m     \u001b[35m\u2502 \u2551\u001b[37m     \u001b[35m\u2502\u001b[37m       \u001b[35m\u2502\u001b[37m\r\n                                          \u258c\u001b[47m    \u001b[40m  \u001b[1;35m\u2568\u2500\u2500\u2500\u2500\u2500\u2518 \u2568\u2500\u2500\u2500\u2500\u2500\u2518 \u2559\u2500\u2500\u2500\u2500\u2500\u2518\u001b[0m\r\n         \u001b[1;31mDial Up\u001b[0m                          \u258c\u001b[47m    \u001b[40m\u258c\r\n         \u001b[1;34m705.555.1212\u001b[0m     \u001b[33;46m\u2584\u2584\u001b[36;40m\u258c\u001b[37m             \u258c\u001b[1;30;47m_____\u001b[0m\\       \u001b[30m@\u001b[1;36mLocal Date & Time\u001b[0m\r\n         \u001b[1;31mModem\u001b[0m            \u001b[33;46m\u2584\u2584\u001b[36;40m\u258c\u001b[37m      \u2584\u2584\u2584\u2584\u001b[1;32m[\u2588\u258c\u001b[0m\u2584\u2584\u2588\u2588\u2584\u2584_\\_____  \u001b[1;34m04/06/26 at 10:49p\u001b[0m\r\n         \u001b[1;33mUSR \u001b[36mV.Everything \u001b[0;33;46m\u2584\u2584\u2584\u001b[36;40m\u258c    \u001b[1;30;43m_____________________\u001b[0m) \u001b[1;36mNode# \u001b[32m1\u001b[36m of \u001b[32m10\u001b[0m\r\n         \u001b[1;31mAccess\u001b[0m           \u001b[33;46m\u2584\u2584\u2584\u2584\u2584\u2584\u001b[36;40m\u258c \u001b[33m\u25a0\u001b[1;30;43m\u2551\u001b[0;33m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[37m(  \u001b[1;36mActive Nodes:\u001b[31m1\u001b[0m\r\n         \u001b[1;32mTelnet/WWW/FTP   \u001b[0;33;46m\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u001b[36;40m\u258c \u001b[1;30;43m\u2563\u001b[0;33m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[37m\u2502  \u001b[1;35mMystic BBS\r\n\u001b[0m         \u001b[1;31mLocation\u001b[0m           \u2580\u2592\u2580   \u001b[33m\u25a0\u001b[1;30;43m\u2551\u001b[0;33m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[43m  \u001b[40m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[37m\u2502 \u001b[30m@\u001b[1;36mVersion:\u001b[33m1.12 A49\u001b[0m\r\n         \u001b[1;35mEdmonton, Ab. Can. \u001b[0m\u25a0\u2592     \u001b[1;30;43m\u255d\u001b[0;33m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[43m  \u001b[40m\u2588\u2588\u2588\u2588\u2588\u2588\u001b[37m\u2502 \u001b[30m@\u001b[1;36mRunning On:\u001b[33mWindows\u001b[0m\r\n         \u001b[1;35mCrystal River, Fl.\u001b[0m0\u25800\u25800   \u001b[1;30;43m\u2500\u2500\u2500\u001b[0;33m\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u001b[1;30;43m\u2500\u2500\u2500\u001b[0m\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u25a0\r\n         \u001b[1;36m\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u001b[0m\r\n\r\n\u001b[34m[\u001b[1;32m\u25a0\u001b[0;34;40m] \u001b[1;34mEnter your user name: \u001b[44m                              \u001b[37m\u001b[30D",
      "dsr_replies": 1,
      "dsr_requests": 1,
      "encoding": "utf-8",
      "option_states": {
        "server_offered": {
          "AARDWOLF": false,
          "ATCP": false,
          "ECHO": true,
          "GMCP": false,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": false,
          "SGA": true,
          "ZMP": false
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "BINARY": true,
          "GMCP": false,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": false,
          "SNDLOC": false,
          "TTYPE": true,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.5063393115997314,
        "total": 11.312369108200073
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-03-07T04:15:43.738153+00:00",
      "host": "joesbbs.com",
      "ip": "75.158.160.164",
      "port": 23
    },
    {
      "connected": "2026-04-05T18:32:34.406903+00:00",
      "host": "joesbbs.com",
      "ip": "75.158.160.164",
      "port": 23
    },
    {
      "connected": "2026-04-07T05:49:53.676341+00:00",
      "host": "joesbbs.com",
      "ip": "75.158.160.164",
      "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 joesbbs.com 23
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=joesbbs.com port=23
INFO client_base.py:190 Connected to <Peer 75.158.160.164 23>
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 + 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 + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
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 + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
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 + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
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 + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL 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 + 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 + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
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 + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
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 + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
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 + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:773 recv IAC DO SNDLOC
DEBUG stream_writer.py:1887 handle_do(SNDLOC)
DEBUG stream_writer.py:1995 DO SNDLOC not supported.
DEBUG stream_writer.py:3384 local_option[SNDLOC] = False
DEBUG stream_writer.py:1024 send IAC WONT SNDLOC
DEBUG stream_writer.py:773 recv IAC WILL ECHO
DEBUG stream_writer.py:789 WILL ECHO unsolicited
DEBUG stream_writer.py:2045 handle_will(ECHO)
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:1024 send IAC DO ECHO
DEBUG stream_writer.py:3384 remote_option[ECHO] = True
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:773 recv IAC WILL SGA
DEBUG stream_writer.py:789 WILL SGA unsolicited
DEBUG stream_writer.py:2045 handle_will(SGA)
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1024 send IAC DO SGA
DEBUG stream_writer.py:3384 remote_option[SGA] = True
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = False
DEBUG stream_writer.py:773 recv IAC DO BINARY
DEBUG stream_writer.py:1887 handle_do(BINARY)
DEBUG stream_writer.py:3384 pending_option[WILL + BINARY] = True
DEBUG stream_writer.py:1024 send IAC WILL BINARY
DEBUG stream_writer.py:3384 local_option[BINARY] = True
DEBUG stream_writer.py:3384 pending_option[WILL + BINARY] = False
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 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 MXP
DEBUG stream_writer.py:2010 handle_dont(MXP)
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:3384 local_option[MXP] = 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 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 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 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 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 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 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 ZMP
DEBUG stream_writer.py:2199 handle_wont(ZMP)
DEBUG stream_writer.py:3384 remote_option[ZMP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = 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 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 MCCP2_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP2_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP2_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_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 MSSP
DEBUG stream_writer.py:2199 handle_wont(MSSP)
DEBUG stream_writer.py:3384 remote_option[MSSP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = 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 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 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:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG client_base.py:531 negotiation complete after 0.39s.
DEBUG client_base.py:307 DSR detected early in data_received, sending CPR
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1024 send IAC DO BINARY
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:1024 send IAC DO STATUS
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC DO CHARSET
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1024 send IAC DO EOR
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1024 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:773 recv IAC WONT STATUS
DEBUG stream_writer.py:2199 handle_wont(STATUS)
DEBUG stream_writer.py:3384 remote_option[STATUS] = False
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:773 recv IAC WONT CHARSET
DEBUG stream_writer.py:2199 handle_wont(CHARSET)
DEBUG stream_writer.py:3384 remote_option[CHARSET] = False
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:773 recv IAC WONT EOR
DEBUG stream_writer.py:2199 handle_wont(EOR)
DEBUG stream_writer.py:3384 remote_option[EOR] = False
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = False
DEBUG stream_writer.py:773 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2199 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3384 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = False
DEBUG fingerprinting.py:849 connection for server fingerprint aac0d9e4a94e81dc
INFO client_base.py:122 Connection closed to <Peer 75.158.160.164 23>

joesbbs.com:2300

Connection Banner:

<WC145402-80545502123806BC8294823> Wildcat! Interactive Net Server (c) 1998-2025 Santronics Software, Inc. Registration number: 02-8054 v8.0.454.16 (Dec 6 2024) Node: 2 Connected with Telnet. Ansi detected. ▄ ██▓██ ▀▄▄▀▄▀█████▄█████████▀▀▀▀▄██▀▀ ▒▄█▀▄▀▄▀▄▀▄ ▄▀▄▀ ▀ ▄ █▄▀▓██ ███████████████▀▀▀▄▄███▀▀▀ ▄▄ █ ████████▀▄▀▄ ▄ ▄ █▄▀ ▓██ █████████▀▀▀▄▄███▀▀▀ ▄▄▄██▀▀ ▄▄█ ███████▄▀▄▀ ▄▀▄▀▄▀▄▀▄ ▄▀ ▒██ ▀██▀▀▀▄▄████▀▀ ▄▄▄████▀█▄▄███▀▀▄██████▄▀ ▄▄▄ ▀▄█▄███▄█▄▀▄ ▀ ▄██▄▄███▀▀▀ ▄▄██ ████████▀▀▄▄▄███████▀▀▀▀ ▄ ▀▀█ ▀████████▄▀▄ ▀▀▀█▄▄███▌▌▌▌▌██████▀▀▄▄▄████████▀▀▀▀ ▄ ▀▀▄▄▐ ██ ▄▄▀▀████▄▄ ▓ ██▄█▄████████▀▀▀▄▄██████████▀▀▀▀ ▄ ▀ ▀▀█ ▀█ ▀ █ █ █▌▀▀▌▄▄▀▀██▌▀█▄ █ ████▀▀▀▄▄▄▄▀ ▄▄▄▄▄█▀▀█▀▀▀▀ ▄ ▀▀▄▄▀█ █ ▄▄▀█ █ ███▀█████ ███▄▀███▄ ▀▀▀ ▄▄▄███▀▄▄███████▀▀▀▀ ▄ ▀ ▀▀█ ▀█ ▀ ▄▄ ▀ ▄▄█ ███ ▌ ███ ▀▀████▄▀███████████▀▄██████▀▀▀▀ ▄ ▀ ▀▀▄▄▀█▀█ ▄▄▀▌▐▄▀▓▄ ▀▄ ▀ ▌ ███▀▄███ ██▐██████▄▄█▀▀▀▀▓▄▄█████▀▀▀▀ ▄ ▀ ▀▀▄▄▀█ ▀ ▄▄▀█▄▀ ▌ ▀▀██▄ ▄ ▀█ ▄▀▀▄███ ▓▓ ██████████████████▀▀▀▀ ▄ ▀ ▀▀▄▄▀█ ▀ ▄▄▀█ ▀ ▀▀▀█ ▀ ▐██ ▄ ▀ ▄ ▀ ░░ ███████████████▀▀▀▀ ▀ ▀▀▄▄▀█ ▀ ▄▄▀█ ▀ ▄▄▀▄ █▌ ▐▄▄▄███▄ ▀▄▀▄▀▄ ███████████████ █▄▀▄█▀▀▄▄▀█ ▀ ▄▄▀▀ ▀ ▄▄▀█ ▀ ▄ ▀ ▀▀▓███▄ ██████████████▓█████████ █▀▀▄▄▀█ ▀ ▄▄▀█ ▀ ▀▄ ▀█ ▀ ▄▄▀▀ ▄▄ ▀ ▀▄▀█▄ ███▀▄████████████████████ █ ▀ ▄▄▀█ ▀ ▄▄▐▄▀▄▄ ▄ ▀ ▄▄▀▀ ██▄█▄ Joe's BBS, Est. 1991. Node # 2 of 12 Nodes SysOp: Joe Schweier AKA IB Joe Current Online Users: 0 DialUp Access: 780-555-1212 (TBA) InterNET Access: JoesBBS.com ▀ ▀▄▀▄▀▄▀▄▀█▀█████▀██▀▄▀▄▀█████████████████████████████████▀██▀▄▀▄█▀▄▀▄▀▄ ▀ What is your first name?

Server URLs

Server Location: 🇨🇦 Canada (GeoIP)

BBS Software

Detected: Wildcat!

Encoding

  • Effective encoding: cp437

  • Override: cp437 (from bbslist.txt)

  • Scanner detected: cp437

Telnet Fingerprint

e9e1390d6941c201

This fingerprint is shared by 142 other servers.

Options offered by server: BINARY, ECHO, SGA

Options requested from client: BINARY

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

Show JSON
{
  "server-probe": {
    "fingerprint": "e9e1390d6941c201",
    "fingerprint-data": {
      "offered-options": [
        "BINARY",
        "ECHO",
        "SGA"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "CHARSET",
        "COM_PORT",
        "EOR",
        "GMCP",
        "MCCP2",
        "MCCP3",
        "MSDP",
        "MSP",
        "MSSP",
        "MXP",
        "STATUS",
        "ZMP"
      ],
      "requested-options": [
        "BINARY"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "\u001b[0;1;40;37m",
      "banner_before_return": "\f\u001b[0m\u001b[H\u001b[2J\r<WC145402-80545502123806BC8294823>\rWildcat! Interactive Net Server (c) 1998-2025 Santronics Software, Inc.\r\nRegistration number: 02-8054 v8.0.454.16 (Dec  6 2024)  Node: 2\r\n\u001b[6n\r    \r\nConnected with Telnet.  Ansi detected.\r\n\r\n\u001b[0;40;37m\u001b[H\u001b[2J\u001b[0;1;40;33m\r\n \u001b[0;1;40;37m               \u001b[0;1;40;30m\u2584 \u2588\u001b[0;1;47;30m\u2588\u001b[0;40;37m\u2593\u2588\u2588 \u001b[0;1;42;32m\u2580\u2584\u2584\u2580\u2584\u2580\u001b[0;1;40;32m\u2588\u2588\u2588\u2588\u2588\u001b[0;1;42;32m\u2584\u001b[0;1;40;32m\u2588\u2588\u2588\u2588\u001b[0;1;40;37m\u2588\u2588\u001b[0;1;40;32m\u2588\u001b[0;1;40;37m\u2588\u001b[0;1;40;32m\u2588\u001b[0;1;40;37m\u2580\u2580\u001b[0;1;47;32m\u2580\u2580\u001b[0;40;37m\u2584\u2588\u2588\u2580\u2580  \u001b[0;1;40;30m\u2592\u2584\u2588\u2580\u2584\u2580\u2584\u2580\u2584\u2580\u2584 \u2584\u2580\u2584\u2580 \u2580\r\n               \u2584 \u2588\u2584\u2580\u001b[0;40;37m\u2593\u2588\u2588 \u001b[0;1;40;32m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;1;47;32m\u2580\u001b[0;40;37m\u2584\u2584\u2588\u2588\u2588\u2580\u2580\u2580 \u2584\u2584\u001b[0;47;37m  \u001b[0;40;37m\u2588 \u001b[0;1;40;30m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2584\u2580\u2584\r\n     \u2584 \u2584        \u2588\u2584\u2580 \u001b[0;40;37m\u2593\u2588\u2588 \u001b[0;1;40;32m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[0;1;40;37m\u2580\u2580\u001b[0;1;47;32m\u2580\u001b[0;40;37m\u2584\u2584\u2588\u2588\u2588\u2580\u2580\u2580 \u2584\u2584\u2584\u2588\u2588\u2580\u2580 \u2584\u2584\u2588 \u001b[0;1;40;30m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2584\u2580\u2584\u2580\r\n   \u2584\u2580\u2584\u2580\u2584\u2580\u2584\u2580\u2584     \u2584\u2580 \u001b[0;40;37m\u2592\u2588\u2588 \u001b[0;1;40;32m\u2580\u2588\u2588\u2580\u2580\u001b[0;1;47;32m\u2580\u001b[0;40;37m\u2584\u2584\u2588\u2588\u2588\u2588\u2580\u2580 \u2584\u2584\u2584\u2588\u2588\u2588\u2588\u2580\u2588\u2584\u2584\u2588\u2588\u2588\u2580\u2580\u001b[0;1;47;30m\u2584\u001b[0;1;40;30m\u2588\u2588\u2588\u2588\u2588\u2588\u2584\u2580 \u2584\u2584\u2584\r\n  \u2580\u2584\u2588\u2584\u2588\u2588\u2588\u2584\u2588\u2584\u2580\u2584    \u2580  \u001b[0;1;47;30m\u2584\u001b[0;40;37m\u2588\u2588\u2584\u2584\u2588\u2588\u2588\u2580\u2580\u2580 \u2584\u2584\u2588\u2588\u001b[0;47;37m  \u001b[0;40;37m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;1;47;30m\u2584\u001b[0;1;40;30m\u2584\u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;47;30m\u2580\u2580 \u2584 \u2580\u001b[0;1;47;30m\u2580\u001b[0;1;40;30m\u2588\r\n  \u2580\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2584\u2580\u2584        \u2580\u001b[0;40;37m\u2580\u2580\u2588\u2584\u2584\u2588\u2588\u2588\u258c\u258c\u258c\u258c\u258c\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;1;47;30m\u2584\u001b[0;1;40;30m\u2584\u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;47;30m\u2580\u2580 \u2584    \u001b[0;40;37m\u2580\u001b[0;1;40;30m\u2580\u001b[0;40;37m\u2584\u2584\u001b[0;1;40;30m\u2590\r\n  \u2588\u2588 \u2584\u001b[0;40;37m\u2584\u001b[0;1;40;30m\u2580\u2580\u2588\u2588\u2588\u2588\u2584\u2584 \u2593      \u2588\u001b[0;40;37m\u2588\u001b[0;1;47;32m\u2584\u001b[0;40;37m\u2588\u001b[0;47;31m\u2584\u001b[0;40;37m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u2580\u001b[0;1;40;30m\u2584\u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;47;30m\u2580\u2580 \u2584 \u2580  \u001b[0;40;37m\u2580\u2580\u2588 \u2580\u2588 \u2580 \u001b[0;1;40;30m\u2588\r\n  \u2588 \u2588\u258c\u001b[0;40;37m\u2580\u2580\u001b[0;1;40;30m\u258c\u2584\u2584\u2580\u2580\u2588\u2588\u258c\u2580\u2588\u2584    \u2588\u001b[0;1;47;30m \u001b[0;40;37m\u2588\u2588\u2588\u2588\u2580\u2580\u2580\u001b[0;1;47;30m\u2584\u001b[0;1;40;30m\u2584\u2584\u2584\u2580 \u2584\u2584\u2584\u2584\u2584\u2588\u2580\u2580\u2588\u2580\u2580\u001b[0;47;30m\u2580\u2580  \u2584   \u001b[0;40;37m\u2580\u2580\u2584\u2584\u2580\u2588 \u2588 \u2584\u2584\u2580\u001b[0;1;40;30m\u2588 \u2588\r\n   \u2588\u2588\u2588\u2580\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2584\u2580\u2588\u2588\u2588\u2584 \u2580\u2580\u2580 \u2584\u2584\u2584\u2588\u2588\u2588\u2580\u2584\u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;47;30m\u2580\u2580 \u2584 \u2580  \u001b[0;40;37m\u2580\u2580\u2588 \u2580\u2588 \u2580  \u2584\u001b[0;1;40;31m\u2584  \u001b[0;1;40;30m\u2580  \u2584\u2584\u2588\r\n  \u2588\u2588\u2588 \u258c \u2588\u2588\u2588 \u2580\u2580\u2588\u2588\u2588\u2588\u2584\u2580\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;47;30m\u2580\u2580 \u2584 \u2580  \u001b[0;40;37m\u2580\u2580\u2584\u2584\u2580\u2588\u2580\u2588 \u2584\u2584\u2580\u258c\u2590\u001b[0;40;31m\u2584\u001b[0;40;37m\u2580\u001b[0;1;47;31m\u2593\u001b[0;1;40;31m\u2584 \u001b[0;40;37m\u2580\u001b[0;1;47;30m\u2584\u001b[0;1;40;30m \u2580 \u258c\r\n  \u2588\u2588\u2588\u2580\u2584\u2588\u2588\u2588 \u2588\u2588\u2590\u2588\u2588\u2588\u2588\u2588\u2588\u2584\u2584\u2588\u2580\u2580\u2580\u2580\u2593\u2584\u2584\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;47;30m\u2580\u2580 \u2584 \u2580  \u001b[0;40;37m\u2580\u2580\u2584\u2584\u2580\u2588 \u2580 \u2584\u2584\u2580\u2588\u2584\u2580  \u001b[0;1;41;31m\u258c\u001b[0;1;40;31m \u001b[0;40;31m\u2580\u001b[0;1;41;31m\u2580\u001b[0;1;47;31m\u2588\u001b[0;1;40;31m\u2588\u001b[0;40;33m\u2584 \u001b[0;1;40;30m\u2584 \u2580\u2588\r\n  \u2584\u2580\u2580\u2584\u2588\u2588\u2588 \u2593\u2593 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;47;30m\u2580\u2580 \u2584 \u2580  \u001b[0;40;37m\u2580\u2580\u2584\u2584\u2580\u2588 \u2580 \u2584\u2584\u2580\u2588 \u2580 \u2580\u001b[0;1;47;30m\u2580\u2580\u2588\u001b[0;1;40;30m   \u001b[0;40;31m\u2580 \u001b[0;1;41;31m\u2590\u001b[0;1;47;31m\u2588\u001b[0;1;40;31m\u2588 \u001b[0;1;40;30m\u2584 \u2580\r\n   \u2584   \u2580 \u2591\u2591 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2580\u001b[0;47;30m\u2580\u2580   \u2580  \u001b[0;40;37m\u2580\u2580\u2584\u2584\u2580\u2588 \u2580 \u2584\u2584\u2580\u2588 \u2580  \u2584\u2584\u2580\u001b[0;1;47;30m\u2584\u001b[0;1;40;30m \u2588\u258c \u001b[0;40;31m\u2590\u001b[0;1;40;31m\u2584\u2584\u001b[0;1;41;31m\u2584\u001b[0;1;47;31m\u2588\u001b[0;1;40;31m\u2588\u2588\u001b[0;1;43;31m\u2584\u001b[0;1;40;37m\r\n  \u001b[0;1;40;30m\u2580\u2584\u2580\u2584\u2580\u2584   \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u001b[0;1;47;30m\u2588\u2584\u001b[0;47;30m\u2580\u001b[0;1;47;30m\u2584\u2588\u001b[0;40;37m\u2580\u001b[0;1;40;30m\u2580\u001b[0;40;37m\u2584\u2584\u2580\u2588 \u2580 \u2584\u2584\u2580\u2580 \u001b[0;1;40;30m\u2580  \u001b[0;40;37m\u2584\u2584\u2580\u001b[0;1;40;30m\u2588 \u2580  \u2584 \u2580   \u001b[0;40;31m\u2580\u001b[0;1;41;31m\u2580\u001b[0;1;47;31m\u2593\u2588\u001b[0;1;40;31m\u2588\u2588\u001b[0;40;33m\u2584\r\n  \u001b[0;1;40;30m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2593\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2588\u2580\u2580\u001b[0;40;37m\u2584\u001b[0;1;40;30m\u2584\u001b[0;40;37m\u2580\u2588 \u2580 \u2584\u2584\u2580\u2588 \u001b[0;1;40;30m\u2580 \u001b[0;1;41;31m\u2580\u001b[0;1;40;31m\u2584 \u001b[0;40;37m\u2580\u001b[0;1;40;30m\u2588 \u2580 \u2584\u2584\u2580\u2580  \u2584\u2584 \u2580    \u001b[0;1;41;31m\u2580\u2584\u001b[0;1;43;31m\u2580\u001b[0;1;40;31m\u2588\u001b[0;40;33m\u2584\r\n  \u001b[0;1;40;30m\u2588\u2588\u2588\u2580\u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588  \u2588  \u2580 \u001b[0;40;37m\u2584\u2584\u2580\u001b[0;1;40;30m\u2588 \u2580  \u001b[0;40;37m\u2584\u001b[0;1;40;30m\u2584\u001b[0;40;31m\u2590\u001b[0;1;40;31m\u2584\u001b[0;40;31m\u2580\u001b[0;1;47;31m\u2584\u001b[0;40;37m\u2584 \u001b[0;1;40;30m\u2584 \u2580  \u2584\u2584\u2580\u2580         \u001b[0;43;31m\u2588\u001b[0;1;43;31m\u2588\u2584\u2588\u001b[0;40;33m\u2584\r\n  \u001b[0;1;40;33mJoe's BBS, Est. 1991.           \u001b[0;40;30m                 \u001b[0;1;40;32mNode # \u001b[0;1;40;36m2 \u001b[0;1;40;32mof \u001b[0;1;40;36m12\u001b[0;1;40;32m Nodes\u001b[0;40;30m\r\n  \u001b[0;1;40;31mSysOp: \u001b[0;1;40;35mJoe Schweier \u001b[0;1;40;36mAKA \u001b[0;1;40;32mIB Joe\u001b[0;40;30m                   \u001b[0;1;40;35mCurrent Online Users: \u001b[0;1;40;33m0\u001b[0;40;30m\r\n  \u001b[0;1;40;32mDialUp Access: \u001b[0;1;40;33m780-555-1212 (TBA)\u001b[0;40;30m\r\n  \u001b[0;1;40;36mInterNET Access: \u001b[0;1;40;31mJoesBBS.com\u001b[0;40;37m\r\n  \u001b[0;1;40;30m\u2580 \u2580\u2584\u2580\u2584\u2580\u2584\u2580\u2584\u2580\u2588\u2580\u2588\u2588\u2588\u2588\u2588\u2580\u2588\u2588\u2580\u2584\u2580\u2584\u2580\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580\u2588\u2588\u2580\u2584\u2580\u2584\u2588\u2580\u2584\u2580\u2584\u2580\u2584  \u2580\u001b[0;40;30m\r\n                                                                           \r\n\r\n\u001b[0;1;40;33mWhat is your first name? ",
      "dsr_replies": 1,
      "dsr_requests": 1,
      "encoding": "cp437",
      "option_states": {
        "server_offered": {
          "AARDWOLF": false,
          "ATCP": false,
          "BINARY": true,
          "ECHO": true,
          "GMCP": false,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": false,
          "SGA": true,
          "ZMP": false
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "BINARY": true,
          "GMCP": false,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": false,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.10224461555480957,
        "total": 12.422237396240234
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-04-05T18:34:12.693292+00:00",
      "host": "joesbbs.com",
      "ip": "75.158.160.164",
      "port": 2300
    },
    {
      "connected": "2026-04-07T05:35:45.155708+00:00",
      "host": "joesbbs.com",
      "ip": "75.158.160.164",
      "port": 2300
    }
  ]
}

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 joesbbs.com 2300
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=joesbbs.com port=2300
INFO client_base.py:190 Connected to <Peer 75.158.160.164 2300>
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 + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
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 + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
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 + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
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 + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
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 + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
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 + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
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 + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO 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 + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:773 recv IAC WILL ECHO
DEBUG stream_writer.py:789 WILL ECHO unsolicited
DEBUG stream_writer.py:2045 handle_will(ECHO)
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:1024 send IAC DO ECHO
DEBUG stream_writer.py:3384 remote_option[ECHO] = True
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = False
DEBUG client_base.py:307 DSR detected early in data_received, sending CPR
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 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 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 WILL SGA
DEBUG stream_writer.py:789 WILL SGA unsolicited
DEBUG stream_writer.py:2045 handle_will(SGA)
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1024 send IAC DO SGA
DEBUG stream_writer.py:3384 remote_option[SGA] = True
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = False
DEBUG stream_writer.py:773 recv IAC DONT MXP
DEBUG stream_writer.py:2010 handle_dont(MXP)
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:3384 local_option[MXP] = False
DEBUG stream_writer.py:773 recv IAC DO BINARY
DEBUG stream_writer.py:1887 handle_do(BINARY)
DEBUG stream_writer.py:3384 pending_option[WILL + BINARY] = True
DEBUG stream_writer.py:1024 send IAC WILL BINARY
DEBUG stream_writer.py:3384 local_option[BINARY] = True
DEBUG stream_writer.py:3384 pending_option[WILL + BINARY] = 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 WILL BINARY
DEBUG stream_writer.py:789 WILL BINARY unsolicited
DEBUG stream_writer.py:2045 handle_will(BINARY)
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1024 send IAC DO BINARY
DEBUG stream_writer.py:3384 remote_option[BINARY] = True
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = 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 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 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 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 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 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 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 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 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 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 MCCP2_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP2_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP2_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + 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 MSSP
DEBUG stream_writer.py:2199 handle_wont(MSSP)
DEBUG stream_writer.py:3384 remote_option[MSSP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = 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 ZMP
DEBUG stream_writer.py:2199 handle_wont(ZMP)
DEBUG stream_writer.py:3384 remote_option[ZMP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = False
DEBUG client_base.py:531 negotiation complete after 0.15s.
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:1024 send IAC DO STATUS
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC DO CHARSET
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1024 send IAC DO EOR
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1024 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:773 recv IAC WONT STATUS
DEBUG stream_writer.py:2199 handle_wont(STATUS)
DEBUG stream_writer.py:3384 remote_option[STATUS] = False
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:773 recv IAC WONT CHARSET
DEBUG stream_writer.py:2199 handle_wont(CHARSET)
DEBUG stream_writer.py:3384 remote_option[CHARSET] = False
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:773 recv IAC WONT EOR
DEBUG stream_writer.py:2199 handle_wont(EOR)
DEBUG stream_writer.py:3384 remote_option[EOR] = False
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = False
DEBUG stream_writer.py:773 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2199 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3384 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = False
DEBUG fingerprinting.py:849 connection for server fingerprint e9e1390d6941c201
INFO client_base.py:122 Connection closed to <Peer 75.158.160.164 2300>