209.38.159.111 (bbs.excalibursheath.com)

bbs.excalibursheath.com:23

Connection Banner:

Synchronet BBS for Linux Version 3.21 Telnet connection from: 143.198.61.53 Resolving hostname... _ ο»Ώ_ Synchronet BBS for Linux Version 3.21 Copyright 2025 Rob Swindell

This banner is more than 95% similar to 23 other servers:

Server URLs

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

Listing

  • BBS Name: Cyber Sword (from listing)

  • Listed Location: Santa Clara, CA, USA

BBS Software

Detected: Synchronet

Encoding

  • Effective encoding: utf-8

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

  • Scanner detected: utf-8

Telnet Fingerprint

cdf52165b1ba8b95

This fingerprint is shared by 375 other servers.

Options offered by server: AARDWOLF, ATCP, ECHO, GMCP, MCCP2, MCCP3, MSDP, MSP, MSSP, MXP, SGA, ZMP

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

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

Show JSON
{
  "server-probe": {
    "fingerprint": "cdf52165b1ba8b95",
    "fingerprint-data": {
      "offered-options": [
        "AARDWOLF",
        "ATCP",
        "ECHO",
        "GMCP",
        "MCCP2",
        "MCCP3",
        "MSDP",
        "MSP",
        "MSSP",
        "MXP",
        "SGA",
        "ZMP"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "EOR",
        "STATUS"
      ],
      "requested-options": [
        "NAWS",
        "NEW_ENVIRON",
        "TSPEED",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "",
      "banner_before_return": "\r\nSynchronet BBS for Linux  Version 3.21\r\nTelnet connection from: 143.198.61.53\r\nResolving hostname...\r\n\r\n\u001b[s\u001b[0c\u001b[255B\u001b[255C\b_\u001b[6n\u001b[u\u001b[!_\r\ufeff\u001b[6n\u001b[0m_\u001b[2J\u001b[H\f\r\r      Synchronet BBS for Linux  Version 3.21  Copyright 2025 Rob Swindell\r\n",
      "dsr_replies": 2,
      "dsr_requests": 2,
      "encoding": "utf-8",
      "option_states": {
        "server_offered": {
          "AARDWOLF": true,
          "ATCP": true,
          "ECHO": true,
          "GMCP": true,
          "MCCP2": true,
          "MCCP3": true,
          "MSDP": true,
          "MSP": true,
          "MSSP": true,
          "MXP": true,
          "SGA": true,
          "ZMP": true
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "GMCP": false,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": false,
          "NAWS": true,
          "NEW_ENVIRON": true,
          "SNDLOC": false,
          "TSPEED": true,
          "TTYPE": true,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.5053315162658691,
        "total": 13.417015075683594
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-03-07T04:12:47.355646+00:00",
      "host": "bbs.excalibursheath.com",
      "ip": "209.38.159.111",
      "port": 23
    },
    {
      "connected": "2026-04-05T18:56:29.822854+00:00",
      "host": "bbs.excalibursheath.com",
      "ip": "209.38.159.111",
      "port": 23
    },
    {
      "connected": "2026-04-07T06:41:03.154434+00:00",
      "host": "bbs.excalibursheath.com",
      "ip": "209.38.159.111",
      "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.excalibursheath.com 23
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=bbs.excalibursheath.com port=23
INFO client_base.py:190 Connected to <Peer 209.38.159.111 23>
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 + 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 + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
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[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 + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
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 + 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 + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
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: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 + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
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 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 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 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 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 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 WILL GMCP
DEBUG stream_writer.py:2045 handle_will(GMCP)
DEBUG stream_writer.py:998 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[GMCP] = True
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Hello IAC SE
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Supports.Set IAC SE
INFO client.py:201 GMCP handshake: Core.Hello + Core.Supports.Set ['Char 1', 'Char.Vitals 1', 'Char.Items 1', 'Room 1', 'Room.Info
    1', 'Comm 1', 'Comm.Channel 1', 'Group 1']
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WILL AARDWOLF
DEBUG stream_writer.py:2045 handle_will(AARDWOLF)
DEBUG stream_writer.py:998 skip DO AARDWOLF; pending_option = True
DEBUG stream_writer.py:3384 remote_option[AARDWOLF] = True
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC WILL ATCP
DEBUG stream_writer.py:2045 handle_will(ATCP)
DEBUG stream_writer.py:998 skip DO ATCP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[ATCP] = True
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = 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 MSP
DEBUG stream_writer.py:2045 handle_will(MSP)
DEBUG stream_writer.py:998 skip DO MSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = 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 WILL MSDP
DEBUG stream_writer.py:2045 handle_will(MSDP)
DEBUG stream_writer.py:998 skip DO MSDP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:773 recv IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:2045 handle_will(MCCP3_COMPRESS)
DEBUG stream_writer.py:998 skip DO MCCP3_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = True
DEBUG stream_writer.py:2110 MCCP3: client compression activated
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = 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 WILL MXP
DEBUG stream_writer.py:2045 handle_will(MXP)
DEBUG stream_writer.py:998 skip DO MXP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG client_base.py:510 MCCP3 compression started (client→server)
DEBUG client_base.py:531 negotiation complete after 0.02s.
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 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 TSPEED
DEBUG stream_writer.py:1887 handle_do(TSPEED)
DEBUG stream_writer.py:3384 pending_option[WILL + TSPEED] = True
DEBUG stream_writer.py:1024 send IAC WILL TSPEED
DEBUG stream_writer.py:3384 pending_option[SB + TSPEED] = True
DEBUG stream_writer.py:3384 local_option[TSPEED] = True
DEBUG stream_writer.py:3384 pending_option[WILL + TSPEED] = False
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 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 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 client_base.py:307 DSR detected early in data_received, sending CPR
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 fingerprinting.py:849 connection for server fingerprint cdf52165b1ba8b95
INFO client_base.py:122 Connection closed to <Peer 209.38.159.111 23>

bbs.excalibursheath.com:5513

Connection Banner:

Synchronet BBS for Linux Version 3.21 RLogin connection from: 143.198.61.53 Resolving hostname... _ βˆ©β•—β”_ Synchronet BBS for Linux Version 3.21 Copyright 2025 Rob Swindell β–„β–ˆβ–€β–€β–„ β–„β–ˆβ–ˆβ–ˆβ–ˆ β–„ β–€β–ˆβ–„ β–€ β–€β–€ β–€β–€β–€β–€β–€β–€β–€β–€β–€ β–€ β–β–ˆβ–ˆ β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€ β–€β–€ β–€ β–ˆβ–ˆ β–€ β–€β–ˆβ–ˆβ–„β–€β–ˆβ–„ β–ˆβ–ˆβ–β–ˆ β–ˆβ–„β–€β–ˆβ–ˆβ–ˆβ–„ β–β–ˆβ–ˆ β–ˆβ–„β–β–ˆβ–ˆβ–ˆβ–„ β–„β–ˆβ–€β–„β–€β–ˆβ–ˆβ–ˆ β–ˆβ–ˆ β–„β–ˆβ–ˆβ–ˆβ–„β–ˆβ–ˆβ–„β–„ β–„β–  β–€β–ˆβ–ˆ β–ˆβ–Œ β–ˆβ–Œβ–ˆβ–ˆβ–Œβ–ˆβ–ˆβ–Œβ–ˆβ–ˆ β–€β–ˆβ–β–ˆβ–ˆβ–„β–€β–ˆβ–ˆ β–ˆβ–ˆ β–ˆβ–Œβ–ˆβ–ˆ β–ˆβ–ˆ β–ˆβ–ˆβ–Œβ–ˆβ–ˆβ–β–ˆβ–ˆ β–€ β–ˆβ–ˆ β–β–ˆ β–ˆβ–ˆβ–Œβ–β–ˆβ–β–ˆ β–ˆβ–ˆβ–β–ˆβ–ˆβ–Œβ–ˆβ–ˆ β–β–ˆβ–ˆ β–ˆβ–ˆβ–β–ˆβ–ˆβ–„β–€β–β–ˆβ–ˆ β–ˆβ–ˆ β–ˆβ–ˆβ–β–ˆβ–ˆβ–β–ˆβ–ˆβ–€ β–ˆβ–ˆβ– β–€β–„ β–€β–ˆβ–„β–„β–ˆβ–ˆβ–€ β–ˆβ–ˆβ–Œβ–„β–ˆβ–ˆ β–ˆβ–ˆβ–Œβ–ˆβ–ˆβ–„β–„β–€β–β–ˆβ–ˆ β–ˆβ–ˆβ–Œβ–ˆβ–ˆβ–€β–ˆβ–„β–€β–ˆβ–„β–ˆβ–€β–„β–ˆβ–ˆ β–ˆβ–ˆβ–„β–€β–ˆβ–„β–ˆβ–Œβ–€β–ˆβ–„β–„β–€ β–„ β–„β–„β–„ β–„β–„β–β–ˆ β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„ β–„β–„β–„ β–„ β–€β–„β–„β–ˆβ–€ CLIENT CONN: RLogin ADDR: modem.xyz [143.198.61.53] TERM: 80x24 CP437 / ANSI SERVER NAME: Cyber Sword BBS ADDR: bbs.excalibursheath.com NODE: 1 (of 10) - Ubuntu 25.04 x86_64 TIME: Thu Apr 09 2026 18:37:25 UTC-6:00 ADMN: Jordanjm If you are a new user to the system, type "New" now. Otherwise, enter your user name or number now. Enter User Name or 'New' or 'Guest' Login:

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

Server URLs

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

BBS Software

Detected: Synchronet

Encoding

  • Effective encoding: cp437

  • Override: cp437 (from bbslist.txt)

  • Scanner detected: cp437

Telnet Fingerprint

fcc77c9fc888e2f2

This fingerprint is shared by 33 other servers.

Options offered by server: CHARSET

Options requested from client: CHARSET

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

Show JSON
{
  "server-probe": {
    "fingerprint": "fcc77c9fc888e2f2",
    "fingerprint-data": {
      "offered-options": [
        "CHARSET"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "BINARY",
        "COM_PORT",
        "ECHO",
        "EOR",
        "GMCP",
        "MCCP2",
        "MCCP3",
        "MSDP",
        "MSP",
        "MSSP",
        "MXP",
        "SGA",
        "STATUS",
        "ZMP"
      ],
      "requested-options": [
        "CHARSET"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "\r\n\r\n\u001b[0;37;40m\u001b[1m\u001b[36mEnter \u001b[37mUser Name\u001b[36m or '\u001b[33mNew\u001b[36m' or '\u001b[33mGuest\u001b[36m'\r\nLogin: \u001b[37m",
      "banner_before_return": "\u0000\r\nSynchronet BBS for Linux  Version 3.21\r\nRLogin connection from: 143.198.61.53\r\nResolving hostname...\r\n\r\n\u001b[s\u001b[0c\u001b[255B\u001b[255C\b_\u001b[6n\u001b[u\u001b[!_\r\u2229\u2557\u2510\u001b[6n\u001b[0m_\u001b[2J\u001b[H\f\r\r      Synchronet BBS for Linux  Version 3.21  Copyright 2025 Rob Swindell\r\n\u001b[37;40m          \u001b[1m\u001b[34m\u2584\u2588\u2580\u2580\u2584\u001b[0;37;40m                 \u001b[1m\u001b[34m\u2584\u2588\u2588\u2588\u2588\u001b[0;37;40m                            \u001b[1m\u001b[34m\u2584\r\n\u001b[0;37;40m          \u001b[1m\u001b[34m\u2580\u2588\u2584   \u001b[0;37;40m\u001b[34m\u2580 \u2580\u2580 \u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580 \u001b[1m\u2580  \u2590\u2588\u2588 \u001b[0;37;40m\u001b[34m\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u2580 \u2580\u2580 \u2580 \u001b[1m\u2588\u2588 \u001b[0;37;40m\u001b[34m\u2580\r\n\u001b[37m            \u001b[1m\u001b[34m\u2580\u2588\u2588\u2584\u2580\u2588\u2584  \u2588\u2588\u2590\u2588 \u2588\u2584\u2580\u2588\u2588\u2588\u2584 \u2590\u2588\u2588  \u2588\u2584\u2590\u2588\u2588\u2588\u2584 \u2584\u2588\u2580\u2584\u2580\u2588\u2588\u2588 \u2588\u2588 \u2584\u2588\u2588\u2588\u2584\u2588\u2588\u2584\u2584\r\n\u001b[0;37;40m          \u001b[1m\u001b[34m\u2584\u25a0  \u2580\u2588\u2588 \u2588\u258c \u2588\u258c\u2588\u2588\u258c\u2588\u2588\u258c\u2588\u2588 \u2580\u2588\u2590\u2588\u2588\u2584\u2580\u2588\u2588 \u2588\u2588 \u2588\u258c\u2588\u2588 \u2588\u2588 \u2588\u2588\u258c\u2588\u2588\u2590\u2588\u2588 \u2580 \u2588\u2588\r\n\u001b[0;37;40m         \u001b[1m\u001b[34m\u2590\u2588    \u2588\u2588\u258c\u2590\u2588\u2590\u2588 \u2588\u2588\u2590\u2588\u2588\u258c\u2588\u2588   \u2590\u2588\u2588  \u2588\u2588\u2590\u2588\u2588\u2584\u2580\u2590\u2588\u2588 \u2588\u2588 \u2588\u2588\u2590\u2588\u2588\u2590\u2588\u2588\u2580  \u2588\u2588\u25a0\u2580\u2584\r\n\u001b[0;37;40m          \u001b[1m\u001b[34m\u2580\u2588\u2584\u2584\u2588\u2588\u2580  \u2588\u2588\u258c\u2584\u2588\u2588 \u2588\u2588\u258c\u2588\u2588\u2584\u2584\u2580\u2590\u2588\u2588  \u2588\u2588\u258c\u2588\u2588\u2580\u2588\u2584\u2580\u2588\u2584\u2588\u2580\u2584\u2588\u2588 \u2588\u2588\u2584\u2580\u2588\u2584\u2588\u258c\u2580\u2588\u2584\u2584\u2580\r\n\u001b[0;37;40m           \u001b[34m\u2584 \u2584\u2584\u2584 \u2584\u2584\u001b[1m\u2590\u2588 \u001b[0;37;40m\u001b[34m\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584 \u2584\u2584\u2584 \u2584\r\n\u001b[37m            \u001b[34m    \u001b[1m\u2580\u2584\u2584\u2588\u2580\r\n\u001b[0;37;40m\r\n\u001b[1mCLIENT \u001b[0;37;40m\u001b[36mCONN: \u001b[1mRLogin\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mADDR: \u001b[1mmodem.xyz [143.198.61.53]\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mTERM: \u001b[1m80x24 CP437 / ANSI\r\n\u001b[0;37;40m\u001b[1mSERVER \u001b[0;37;40m\u001b[36mNAME: \u001b[1m\u001b[33mCyber Sword BBS\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mADDR: \u001b[1mbbs.excalibursheath.com\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mNODE: \u001b[1m1 \u001b[0;37;40m\u001b[36m(of \u001b[1m10\u001b[0;37;40m\u001b[36m) - \u001b[1mUbuntu 25.04 x86_64\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mTIME: \u001b[1mThu Apr 09 2026 18:37:25 UTC-6:00\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mADMN: \u001b[1mJordanjm\r\n\r\n\u001b[34mIf you are a new user to the system, type \u001b[36m\"New\"\u001b[34m now.\r\nOtherwise, enter your user name or number now.\r\n\u001b[0;37;40m\r\n\u001b[1m\u001b[36mEnter \u001b[37mUser Name\u001b[36m or '\u001b[33mNew\u001b[36m' or '\u001b[33mGuest\u001b[36m'\r\nLogin: \u001b[37m",
      "dsr_replies": 2,
      "dsr_requests": 2,
      "encoding": "cp437",
      "option_states": {
        "server_offered": {},
        "server_requested": {}
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.5055654048919678,
        "total": 11.131155490875244
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-04-05T18:45:17.799295+00:00",
      "host": "bbs.excalibursheath.com",
      "ip": "209.38.159.111",
      "port": 5513
    },
    {
      "connected": "2026-04-08T17:06:19.008573+00:00",
      "host": "bbs.excalibursheath.com",
      "ip": "209.38.159.111",
      "port": 5513
    },
    {
      "connected": "2026-04-10T00:37:35.747221+00:00",
      "host": "bbs.excalibursheath.com",
      "ip": "209.38.159.111",
      "port": 5513
    }
  ]
}

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.excalibursheath.com 5513
Show Logfile
DEBUG client.py:1193 Fingerprint client: host=bbs.excalibursheath.com port=5513
INFO client_base.py:188 Connected to <Peer 209.38.159.111 5513>
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 + 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[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 + 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 + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
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 + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL 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: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: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 + 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 + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
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 + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG client_base.py:513 negotiation failed after 4.00s.
DEBUG client_base.py:519 failed-reply: 'WILL ZMP, WILL AARDWOLF, WILL MSDP, WILL GMCP, WILL MXP, WILL ATCP, WILL MSSP, WILL MSP,
    WILL MCCP2_COMPRESS, WILL MCCP3_COMPRESS, DO ZMP, DO AARDWOLF, DO MSDP, DO GMCP, DO MXP, DO ATCP, DO MSSP, DO MSP, DO
    MCCP2_COMPRESS, DO MCCP3_COMPRESS'
DEBUG server_fingerprinting.py:989 DA request -> b'\x1b[?1;2c'
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 + SGA] = True
DEBUG stream_writer.py:1024 send IAC DO SGA
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:1024 send IAC DO ECHO
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:998 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:998 skip DO MCCP3_COMPRESS; pending_option = True
DEBUG stream_writer.py:998 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:998 skip DO MSDP; pending_option = True
DEBUG stream_writer.py:998 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:998 skip DO MSP; pending_option = True
DEBUG stream_writer.py:998 skip DO MXP; pending_option = True
DEBUG stream_writer.py:998 skip DO ZMP; pending_option = True
DEBUG stream_writer.py:998 skip DO AARDWOLF; pending_option = True
DEBUG stream_writer.py:998 skip DO ATCP; pending_option = True
DEBUG stream_writer.py:773 recv IAC DO b'\xfd'
DEBUG stream_writer.py:1887 handle_do(DO)
DEBUG stream_writer.py:1995 DO DO not supported.
DEBUG stream_writer.py:3384 local_option[DO] = False
DEBUG stream_writer.py:1024 send IAC WONT DO
DEBUG stream_writer.py:773 recv IAC DO b'\xfd'
DEBUG stream_writer.py:1887 handle_do(DO)
DEBUG stream_writer.py:1995 DO DO not supported.
DEBUG stream_writer.py:1024 send IAC WONT DO
DEBUG stream_writer.py:773 recv IAC DO CHARSET
DEBUG stream_writer.py:1887 handle_do(CHARSET)
DEBUG stream_writer.py:3384 pending_option[WILL + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC WILL CHARSET
DEBUG stream_writer.py:3384 local_option[CHARSET] = True
DEBUG stream_writer.py:3384 pending_option[WILL + CHARSET] = False
DEBUG stream_writer.py:773 recv IAC DO b'\x1b'
DEBUG stream_writer.py:1887 handle_do(b'\x1b')
DEBUG stream_writer.py:1995 DO b'\x1b' not supported.
DEBUG stream_writer.py:3384 local_option[b'\x1b'] = False
DEBUG stream_writer.py:1024 send IAC WONT b'\x1b'
DEBUG stream_writer.py:773 recv IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:1887 handle_do(COM_PORT_OPTION)
DEBUG stream_writer.py:1995 DO COM_PORT_OPTION not supported.
DEBUG stream_writer.py:3384 local_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:1024 send IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:773 recv IAC WONT b'\xfd'
DEBUG stream_writer.py:2199 handle_wont(DO)
DEBUG stream_writer.py:3384 remote_option[DO] = False
DEBUG stream_writer.py:3384 pending_option[DO + DO] = False
DEBUG stream_writer.py:773 recv IAC WONT b'\xfd'
DEBUG stream_writer.py:2199 handle_wont(DO)
DEBUG stream_writer.py:773 recv IAC WILL CHARSET
DEBUG stream_writer.py:2045 handle_will(CHARSET)
DEBUG stream_writer.py:998 skip DO CHARSET; pending_option = True
DEBUG stream_writer.py:3384 remote_option[CHARSET] = True
DEBUG client.py:168 Both sides support CHARSET, ready for server to initiate REQUEST
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:773 recv IAC WONT RCTE
DEBUG stream_writer.py:2199 handle_wont(RCTE)
DEBUG stream_writer.py:3384 remote_option[RCTE] = False
DEBUG stream_writer.py:3384 pending_option[DO + RCTE] = 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:844 connection for server fingerprint fcc77c9fc888e2f2
INFO client_base.py:120 Connection closed to <Peer 209.38.159.111 5513>

server3.camelothost.com:23

Connection Banner:

Synchronet BBS for Linux Version 3.21 Telnet connection from: 143.198.61.53 Resolving hostname... _ βˆ©β•—β”_ Synchronet BBS for Linux Version 3.21 Copyright 2025 Rob Swindell β–€β–ˆβ–€β–ˆβ–€β–€β–ˆβ–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–„ β–€β–“β–ˆ β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–’β–€β–β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–€β–ˆβ–€β–€β–ˆβ–€β–ˆ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ β–“β–ˆβ–ˆβ–„β–„β–„ β–“β–ˆ β–„β–„β–„ β–ˆβ–ˆ β–„β–ˆβ–’β–Œβ–“β–ˆ β–„β–„β–β–ˆβ–ˆβ–„β–„β–„β–“β–ˆβ–ˆβ–„β–„β–„ β–“β–ˆβ–’β–Œβ–“β–ˆβ–ˆβ–ˆβ–“ β–Œ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–Œβ–β–ˆβ–ˆβ–„β–„β–β–’ β–ˆβ–ˆ β–ˆβ–ˆβ–β–ˆβ–ˆβ–ˆβ–β–€β–€β–€β–€β–ˆβ–ˆβ–€β–ˆβ–ˆβ–ˆβ–ˆβ–„β–ˆβ–€β–ˆβ–ˆ β–β–ˆβ–ˆβ–ˆβ–„β–„β–ˆβ–ˆβ–„β–„ β–β–ˆβ–ˆ β–„β–„β–„β–„β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆ gjβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–„ β–„β–ˆβ–“ β–€β–€β–ˆβ–“β–„β–ˆβ–“ β–€β–€β–“ β–€β–ˆβ–’ β–ˆβ–“ β–“β–Œβ–“β–ˆ β–ˆβ–ˆβ–€β–ˆβ–ˆβ–€β–€β–β–ˆ β–€β–ˆβ–ˆβ–„β–„ β–β–ˆβ–“ β–ˆβ–ˆβ–ˆbbs softwareβ–ˆ β–ˆβ–„β–ˆβ–„β–ˆβ–„β–„β–ˆβ–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–Œβ–“β–€ β–„β–„β–„β–„ ▀▐▄▄▄ β–€β–€ β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„β–„ β–€ β–„β–„β–„β–„β–„β–„β–„β–ˆβ–„β–„β–„β–„β–„β–„β–„β–„β–„β–ˆβ–„β–„β–ˆβ–„ CLIENT CONN: Telnet ADDR: modem.xyz [143.198.61.53] TERM: 80x24 CP437 / ANSI SERVER NAME: Cyber Sword BBS ADDR: bbs.excalibursheath.com NODE: 2 (of 10) - Ubuntu 25.04 x86_64 TIME: Thu Apr 09 2026 18:32:50 UTC-6:00 ADMN: Jordanjm If you are a new user to the system, type "New" now. Otherwise, enter your user name or number now. Enter User Name or 'New' or 'Guest' Login:

Server URLs

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

BBS Software

Detected: Synchronet

Encoding

  • Effective encoding: cp437

  • Override: cp437 (from bbslist.txt)

  • Scanner detected: cp437

Telnet Fingerprint

cdf52165b1ba8b95

This fingerprint is shared by 375 other servers.

Options offered by server: AARDWOLF, ATCP, ECHO, GMCP, MCCP2, MCCP3, MSDP, MSP, MSSP, MXP, SGA, ZMP

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

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

Show JSON
{
  "server-probe": {
    "fingerprint": "cdf52165b1ba8b95",
    "fingerprint-data": {
      "offered-options": [
        "AARDWOLF",
        "ATCP",
        "ECHO",
        "GMCP",
        "MCCP2",
        "MCCP3",
        "MSDP",
        "MSP",
        "MSSP",
        "MXP",
        "SGA",
        "ZMP"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "EOR",
        "STATUS"
      ],
      "requested-options": [
        "NAWS",
        "NEW_ENVIRON",
        "TSPEED",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "\u001b[37;40m\r\n\u001b[1m\u001b[44m\u001b[34m\u2580\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2580\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2580\u2580\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2580\u2580\u2580\u2580\u2580\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u001b[44m\u2580\u001b[40m\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u001b[44m\u2580\u001b[0;37;40m\u001b[34m\u2584\u001b[37m \u2580\u001b[1m\u001b[47m\u2593\u001b[40m\u2588\u001b[0;37;40m \u001b[1m\u001b[44m\u001b[34m\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u001b[44m\u2580\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u001b[44m\u2580\u2580\u001b[40m\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u001b[44m\u2580\u2592\u2580\u2590\u2580\u001b[40m\u2580\u2580\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u001b[44m\u2580\u001b[0;37;40m\u001b[34m\u2580\u001b[1m\u001b[44m\u2580\u2580\u2580\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2580\u2580\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2580\u001b[0;37;40m\u001b[34m\u2588\r\n\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[37m \u001b[1m\u001b[47m\u2593\u2588\u001b[40m\u2588\u001b[47m\u2584\u001b[40m\u2584\u001b[0;37;40m\u2584 \u001b[1m\u001b[47m\u2593\u2588\u001b[0;37;40m \u001b[1m\u2584\u2584\u2584\u001b[0;37;40m \u001b[1m\u2588\u2588\u001b[0;37;40m \u001b[1m\u2584\u001b[47m\u2588\u2592\u001b[0;37;40m\u258c\u001b[1m\u001b[47m\u2593\u2588\u001b[0;37;40m \u001b[1m\u2584\u2584\u2590\u001b[47m\u2588\u001b[40m\u2588\u001b[47m\u2584\u001b[0;37;40m\u2584\u001b[1m\u2584\u001b[47m\u2593\u001b[40m\u2588\u2588\u2584\u2584\u001b[0;37;40m\u2584  \u001b[1m\u001b[47m\u2593\u001b[40m\u2588\u001b[47m\u2592\u001b[0;37;40m\u258c\u001b[1m\u001b[47m\u2593\u2588\u001b[40m\u2588\u2588\u001b[47m\u2593\u001b[0;37;40m \u258c \u001b[34m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\r\n\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u258c\u001b[1m\u001b[37m\u2590\u2588\u2588\u2584\u2584\u2590\u001b[47m\u2592\u001b[0;37;40m \u001b[1m\u001b[47m\u2588\u001b[40m\u2588\u001b[0;37;40m \u001b[1m\u2588\u2588\u2590\u2588\u2588\u2588\u2590\u001b[47m\u2580\u001b[40m\u2580\u2580\u2580\u2588\u2588\u2580\u2588\u2588\u2588\u001b[47m\u2588\u001b[40m\u2584\u2588\u2580\u2588\u2588\u001b[0;37;40m \u001b[1m\u2590\u2588\u2588\u001b[47m\u2588\u2584\u001b[0;37;40m\u2584\u001b[1m\u2588\u2588\u2584\u2584\u001b[0;37;40m \u001b[1m\u2590\u2588\u2588\u001b[0;37;40m \u001b[34m\u2584\u2584\u2584\u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\r\n\u001b[44m\u001b[30mgj\u001b[40m\u001b[34m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2584\u001b[37m \u001b[1m\u2584\u2588\u2593\u001b[0;37;40m \u001b[1m\u2580\u2580\u2588\u2593\u001b[0;37;40m\u2584\u001b[1m\u2588\u001b[47m\u2593\u001b[0;37;40m \u2580\u001b[1m\u001b[47m\u2580\u001b[40m\u2593\u001b[0;37;40m \u001b[1m\u2580\u2588\u001b[47m\u2592\u001b[0;37;40m \u001b[1m\u2588\u2593\u001b[0;37;40m \u001b[1m\u001b[47m\u2593\u001b[40m\u258c\u2593\u2588\u001b[0;37;40m \u001b[1m\u2588\u2588\u2580\u001b[47m\u2588\u001b[40m\u2588\u001b[47m\u2580\u001b[0;37;40m\u2580\u001b[1m\u2590\u001b[47m\u2588\u001b[0;37;40m \u001b[1m\u2580\u2588\u001b[47m\u2588\u001b[40m\u2584\u2584\u001b[0;37;40m \u001b[1m\u2590\u2588\u2593\u001b[0;37;40m \u001b[34m\u2588\u2588\u2588\u001b[44m\u001b[37mbbs software\u001b[40m\u001b[34m\u2588\r\n\u2588\u001b[1m\u001b[44m\u2584\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2584\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2584\u2584\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2584\u2584\u2584\u2584\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u2584\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u001b[44m\u2584\u001b[0;37;40m\u001b[34m\u258c\u001b[1m\u001b[37m\u2593\u001b[0;37;40m\u2580 \u001b[1m\u001b[34m\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u001b[44m\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[37m \u2580\u001b[34m\u2590\u001b[1m\u001b[44m\u2584\u001b[40m\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[37m \u001b[1m\u2580\u2580\u001b[0;37;40m \u001b[1m\u001b[34m\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u2584\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u2584\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u2584\u2584\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u2584\u2584\u001b[44m\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[37m \u001b[1m\u2580\u001b[0;37;40m \u001b[1m\u001b[34m\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u2584\u001b[0;37;40m\u001b[34m\u2584\u001b[1m\u2584\u2584\u001b[44m\u2584\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2584\u2584\u001b[0;37;40m\u001b[34m\u2588\u001b[1m\u001b[44m\u2584\r\n\u001b[0;37;40m\r\n\u001b[1mCLIENT \u001b[0;37;40m\u001b[36mCONN: \u001b[1mTelnet\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mADDR: \u001b[1mmodem.xyz [143.198.61.53]\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mTERM: \u001b[1m80x24 CP437 / ANSI\r\n\u001b[0;37;40m\u001b[1mSERVER \u001b[0;37;40m\u001b[36mNAME: \u001b[1m\u001b[33mCyber Sword BBS\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mADDR: \u001b[1mbbs.excalibursheath.com\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mNODE: \u001b[1m2 \u001b[0;37;40m\u001b[36m(of \u001b[1m10\u001b[0;37;40m\u001b[36m) - \u001b[1mUbuntu 25.04 x86_64\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mTIME: \u001b[1mThu Apr 09 2026 18:32:50 UTC-6:00\r\n\u001b[0;37;40m\u001b[1m       \u001b[0;37;40m\u001b[36mADMN: \u001b[1mJordanjm\r\n\r\n\u001b[34mIf you are a new user to the system, type \u001b[36m\"New\"\u001b[34m now.\r\nOtherwise, enter your user name or number now.\r\n\u001b[0;37;40m\r\n\u001b[1m\u001b[36mEnter \u001b[37mUser Name\u001b[36m or '\u001b[33mNew\u001b[36m' or '\u001b[33mGuest\u001b[36m'\r\nLogin: \u001b[37m",
      "banner_before_return": "\r\nSynchronet BBS for Linux  Version 3.21\r\nTelnet connection from: 143.198.61.53\r\nResolving hostname...\r\n\r\n\u001b[s\u001b[0c\u001b[255B\u001b[255C\b_\u001b[6n\u001b[u\u001b[!_\r\u2229\u2557\u2510\u001b[6n\u001b[0m_\u001b[2J\u001b[H\f\r\r      Synchronet BBS for Linux  Version 3.21  Copyright 2025 Rob Swindell\r\n",
      "dsr_replies": 2,
      "dsr_requests": 2,
      "encoding": "cp437",
      "option_states": {
        "server_offered": {
          "AARDWOLF": true,
          "ATCP": true,
          "ECHO": true,
          "GMCP": true,
          "MCCP2": true,
          "MCCP3": true,
          "MSDP": true,
          "MSP": true,
          "MSSP": true,
          "MXP": true,
          "SGA": true,
          "ZMP": true
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "GMCP": false,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": false,
          "NAWS": true,
          "NEW_ENVIRON": true,
          "SNDLOC": false,
          "TSPEED": true,
          "TTYPE": true,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.5518660545349121,
        "total": 13.473754644393921
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-04-05T19:35:26.836031+00:00",
      "host": "server3.camelothost.com",
      "ip": "209.38.159.111",
      "port": 23
    },
    {
      "connected": "2026-04-07T05:41:40.729112+00:00",
      "host": "server3.camelothost.com",
      "ip": "209.38.159.111",
      "port": 23
    },
    {
      "connected": "2026-04-10T00:32:55.973956+00:00",
      "host": "server3.camelothost.com",
      "ip": "209.38.159.111",
      "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 server3.camelothost.com 23
Show Logfile
DEBUG client.py:1193 Fingerprint client: host=server3.camelothost.com port=23
INFO client_base.py:188 Connected to <Peer 209.38.159.111 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 + 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[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 + 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 + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
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 + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL 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: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: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 + 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 + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
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 + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
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 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 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 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 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 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 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 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 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 WILL AARDWOLF
DEBUG stream_writer.py:2045 handle_will(AARDWOLF)
DEBUG stream_writer.py:998 skip DO AARDWOLF; pending_option = True
DEBUG stream_writer.py:3384 remote_option[AARDWOLF] = True
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC WILL MSDP
DEBUG stream_writer.py:2045 handle_will(MSDP)
DEBUG stream_writer.py:998 skip DO MSDP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:773 recv IAC WILL GMCP
DEBUG stream_writer.py:2045 handle_will(GMCP)
DEBUG stream_writer.py:998 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[GMCP] = True
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Hello IAC SE
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Supports.Set IAC SE
INFO client.py:201 GMCP handshake: Core.Hello + Core.Supports.Set ['Char 1', 'Char.Vitals 1', 'Char.Items 1', 'Room 1', 'Room.Info
    1', 'Comm 1', 'Comm.Channel 1', 'Group 1']
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WILL MXP
DEBUG stream_writer.py:2045 handle_will(MXP)
DEBUG stream_writer.py:998 skip DO MXP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG stream_writer.py:773 recv IAC WILL ATCP
DEBUG stream_writer.py:2045 handle_will(ATCP)
DEBUG stream_writer.py:998 skip DO ATCP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[ATCP] = True
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = 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 MSP
DEBUG stream_writer.py:2045 handle_will(MSP)
DEBUG stream_writer.py:998 skip DO MSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = 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 WILL MCCP3_COMPRESS
DEBUG stream_writer.py:2045 handle_will(MCCP3_COMPRESS)
DEBUG stream_writer.py:998 skip DO MCCP3_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = True
DEBUG stream_writer.py:2110 MCCP3: client compression activated
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG client_base.py:489 MCCP3 compression started (client→server)
DEBUG client_base.py:510 negotiation complete after 0.02s.
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 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 TSPEED
DEBUG stream_writer.py:1887 handle_do(TSPEED)
DEBUG stream_writer.py:3384 pending_option[WILL + TSPEED] = True
DEBUG stream_writer.py:1024 send IAC WILL TSPEED
DEBUG stream_writer.py:3384 pending_option[SB + TSPEED] = True
DEBUG stream_writer.py:3384 local_option[TSPEED] = True
DEBUG stream_writer.py:3384 pending_option[WILL + TSPEED] = False
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 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 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 server_fingerprinting.py:989 DA request -> b'\x1b[?1;2c'
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 fingerprinting.py:844 connection for server fingerprint cdf52165b1ba8b95
INFO client_base.py:120 Connection closed to <Peer 209.38.159.111 23>