heightsbbs.heightspc.net:6860

Connection Banner:

i▀│█╭▀▗ t▖▏▀▖▜ c█▀▀▖─▜▟█▀ ▜█ t▙▖ h▖▟▝▙▜♥ bbs! c█▀▀▖─▜▖▗ ▜█ t▙▖ h▖▟▝▙▜♥ bbs p█▃▜ 6860 █▀ n█▗▖ 1 \*\*emsi←reqa77e \* t▃♠▄d██▃ 1.85/25986 █▀ n█▗▖ 1:114/707.0 the heights bbs!!! p▏▖♠♥▖ ▄▃▖♥♥ e♥─♠▄▖ ▜○▟─▖ ▜█ ▖▀▜▖▃ ▜▙▖ bbs. p▏▖♠♥▖ ▄▃▖♥♥ e♥─♠▄▖ ▜○▟─▖ ▜█ ▖▀▜▖▃ ▜▙▖ bbs. p▏▖♠♥▖ ▄▃▖♥♥ e♥─♠▄▖ ▜○▟─▖ ▜█ ▖▀▜▖▃ ▜▙▖ bbs. p▏▖♠♥▖ ▄▃▖♥♥ e♥─♠▄▖ ▜○▟─▖ ▜█ ▖▀▜▖▃ ▜▙▖ bbs. p▏▖♠♥▖ ▄▃▖♥♥ e♥─♠▄▖ ▜○▟─▖ ▜█ ▖▀▜▖▃ ▜▙▖ bbs.

Server URLs

Server Location: 🇺🇸 United States (GeoIP)

Listing

  • BBS Name: Heights BBS (from listing)

  • Listed Location: Casas Adobes, AZ, USA

BBS Software

Reported: C-Net

Encoding

  • Effective encoding: petscii

  • Override: petscii (from bbslist.txt)

  • Scanner detected: petscii

Telnet Fingerprint

1c80cc86f7b9321a

This fingerprint is shared by 27 other servers.

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

Options requested from client: BINARY, LINEMODE, NAWS, TSPEED

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

Show JSON
{
  "server-probe": {
    "fingerprint": "1c80cc86f7b9321a",
    "fingerprint-data": {
      "offered-options": [
        "BINARY",
        "ECHO",
        "SGA",
        "STATUS"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "CHARSET",
        "COM_PORT",
        "EOR",
        "GMCP",
        "MCCP2",
        "MCCP3",
        "MSDP",
        "MSP",
        "MSSP",
        "MXP",
        "ZMP"
      ],
      "requested-options": [
        "BINARY",
        "LINEMODE",
        "NAWS",
        "TSPEED"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "**emsi\u2190reqa77e\n* t\u2583\u2660\u2584d\u2588\u2588\u2583 1.85/25986 \u2588\u2580 n\u2588\u2597\u2596 1:114/707.0\nthe heights bbs!!!\n\np\u258f\u2596\u2660\u2665\u2596 \u2584\u2583\u2596\u2665\u2665 e\u2665\u2500\u2660\u2584\u2596 \u259c\u25cb\u259f\u2500\u2596 \u259c\u2588 \u2596\u2580\u259c\u2596\u2583 \u259c\u2599\u2596 bbs.\n\n\np\u258f\u2596\u2660\u2665\u2596 \u2584\u2583\u2596\u2665\u2665 e\u2665\u2500\u2660\u2584\u2596 \u259c\u25cb\u259f\u2500\u2596 \u259c\u2588 \u2596\u2580\u259c\u2596\u2583 \u259c\u2599\u2596 bbs.\n\n\np\u258f\u2596\u2660\u2665\u2596 \u2584\u2583\u2596\u2665\u2665 e\u2665\u2500\u2660\u2584\u2596 \u259c\u25cb\u259f\u2500\u2596 \u259c\u2588 \u2596\u2580\u259c\u2596\u2583 \u259c\u2599\u2596 bbs.\n\n\np\u258f\u2596\u2660\u2665\u2596 \u2584\u2583\u2596\u2665\u2665 e\u2665\u2500\u2660\u2584\u2596 \u259c\u25cb\u259f\u2500\u2596 \u259c\u2588 \u2596\u2580\u259c\u2596\u2583 \u259c\u2599\u2596 bbs.\n\n\np\u258f\u2596\u2660\u2665\u2596 \u2584\u2583\u2596\u2665\u2665 e\u2665\u2500\u2660\u2584\u2596 \u259c\u25cb\u259f\u2500\u2596 \u259c\u2588 \u2596\u2580\u259c\u2596\u2583 \u259c\u2599\u2596 bbs.\n",
      "banner_before_return": "\ni\u2580\u2502\u2588\u256d\u2580\u2597 t\u2596\u258f\u2580\u2596\u259c c\u2588\u2580\u2580\u2596\u2500\u259c\u259f\u2588\u2580 \u259c\u2588 t\u2599\u2596 h\u2596\u259f\u259d\u2599\u259c\u2665 bbs! c\u2588\u2580\u2580\u2596\u2500\u259c\u2596\u2597 \u259c\u2588 t\u2599\u2596 h\u2596\u259f\u259d\u2599\u259c\u2665 bbs p\u2588\u2583\u259c 6860 \u2588\u2580 n\u2588\u2597\u2596 1         \n",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "petscii",
      "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,
          "STATUS": true,
          "ZMP": false
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "BINARY": true,
          "GMCP": false,
          "LINEMODE": true,
          "MCCP2": false,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": false,
          "MXP": false,
          "NAWS": true,
          "TSPEED": true,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.10237407684326172,
        "total": 20.84940218925476
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-04-05T18:50:43.982512+00:00",
      "host": "heightsbbs.heightspc.net",
      "ip": "71.226.34.228",
      "port": 6860
    },
    {
      "connected": "2026-04-07T06:05:10.541125+00:00",
      "host": "heightsbbs.heightspc.net",
      "ip": "71.226.34.228",
      "port": 6860
    },
    {
      "connected": "2026-04-08T02:30:54.199983+00:00",
      "host": "heightsbbs.heightspc.net",
      "ip": "71.226.34.228",
      "port": 6860
    }
  ]
}

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 heightsbbs.heightspc.net 6860
Show Logfile
DEBUG client.py:1193 Fingerprint client: host=heightsbbs.heightspc.net port=6860
INFO client_base.py:186 Connected to <Peer 71.226.34.228 6860>
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 + 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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
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 + 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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
DEBUG stream_writer.py:773 recv IAC DO NAWS
DEBUG stream_writer.py:1887 handle_do(NAWS)
DEBUG stream_writer.py:3384 pending_option[WILL + NAWS] = True
DEBUG stream_writer.py:1024 send IAC WILL NAWS
DEBUG stream_writer.py:2507 send IAC SB NAWS (rows=25, cols=80) IAC SE
DEBUG stream_writer.py:3384 local_option[NAWS] = True
DEBUG stream_writer.py:3384 pending_option[WILL + NAWS] = False
DEBUG stream_writer.py:773 recv IAC WILL STATUS
DEBUG stream_writer.py:789 WILL STATUS unsolicited
DEBUG stream_writer.py:2045 handle_will(STATUS)
DEBUG stream_writer.py:3384 remote_option[STATUS] = True
DEBUG stream_writer.py:1115 send IAC SB STATUS SEND IAC SE
DEBUG stream_writer.py:3384 pending_option[SB + STATUS] = True
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 LINEMODE
DEBUG stream_writer.py:1887 handle_do(LINEMODE)
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = True
DEBUG stream_writer.py:1024 send IAC WILL LINEMODE
DEBUG stream_writer.py:3384 pending_option[SB + LINEMODE] = True
DEBUG stream_writer.py:3384 local_option[LINEMODE] = True
DEBUG stream_writer.py:2816 slc_start: IAC SB LINEMODE SLC [..]
DEBUG stream_writer.py:2852 _slc_add (b'\x00',   (^@, default))
DEBUG stream_writer.py:2805 send (slc_end): b'\x00\x03\x00'
DEBUG stream_writer.py:2811 slc_end: [..] IAC SE
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = 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 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 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 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 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 ZMP
DEBUG stream_writer.py:2010 handle_dont(ZMP)
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3384 local_option[ZMP] = False
DEBUG stream_writer.py:773 recv IAC DONT MSP
DEBUG stream_writer.py:2010 handle_dont(MSP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:3384 local_option[MSP] = False
DEBUG stream_writer.py:773 recv IAC DONT 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 MSSP
DEBUG stream_writer.py:2010 handle_dont(MSSP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:3384 local_option[MSSP] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP2_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP2_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DONT 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 WONT GMCP
DEBUG stream_writer.py:2199 handle_wont(GMCP)
DEBUG stream_writer.py:3384 remote_option[GMCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WONT MXP
DEBUG stream_writer.py:2199 handle_wont(MXP)
DEBUG stream_writer.py:3384 remote_option[MXP] = False
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG stream_writer.py: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: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 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 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 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 ATCP
DEBUG stream_writer.py:2199 handle_wont(ATCP)
DEBUG stream_writer.py:3384 remote_option[ATCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TSPEED
DEBUG stream_writer.py:754 sub-negotiation cmd TSPEED SE completion byte
DEBUG stream_writer.py:3384 pending_option[SB + TSPEED] = False
DEBUG stream_writer.py:2345 recv TSPEED SEND: b''
DEBUG stream_writer.py:2373 send: IAC SB TSPEED IS b'38400',b'38400' IAC SE
DEBUG client_base.py:499 negotiation failed after 4.00s.
DEBUG client_base.py:505 failed-reply: 'SB STATUS, SB LINEMODE'
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 + 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 WILL BINARY
DEBUG stream_writer.py:2045 handle_will(BINARY)
DEBUG stream_writer.py:998 skip DO BINARY; pending_option = True
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 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 1c80cc86f7b9321a
INFO client_base.py:118 Connection closed to <Peer 71.226.34.228 6860>