50.38.40.79 (x-bit.org)
=======================
.. _ip_50_38_40_79_x-bit_org_1336:
x-bit.org:1336
--------------
**Connection Banner:**
.. image:: /_static/banners/banner_e13eefc84612.png
:alt: Synchronet BBS for Linux Version 3.21 Telnet connection from: 143.198.61.53 Resolving hostname... _ ο»Ώ Synchronet BBS for Linux Version 3.21 Copyright 2026 Rob Swindell ά±ά² -o) /\\\\ _\\_V CLIENT CONN: Telnet ADDR: modem.xyz [143.198.61.53] TERM: 80x24 CP437 / ANSI SERVER NAME: unix-bit ADDR: x-bit.org NODE: 1 (of 7) - Pop!_OS 22.04 LTS x86_64 TIME: Thu Apr 09 2026 05:31 pm UTC-7:00 ADMN: xbit 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:
:class: ansi-banner
:width: 585px
:loading: lazy
Server URLs
~~~~~~~~~~~
.. raw:: html
**Server Location**: πΊπΈ United States (GeoIP)
Listing
~~~~~~~
- **BBS Name**: X-Bit BBS (from listing)
- **Sysop**: Xbit Ops
- **Listed Location**: Beaverton, OR, USA
BBS Software
~~~~~~~~~~~~
**Detected**: Synchronet
Encoding
~~~~~~~~
- **Effective encoding**: utf-8
- **Override**: utf-8 (from bbslist.txt)
- **Scanner detected**: utf-8
Telnet Fingerprint
~~~~~~~~~~~~~~~~~~
:ref:`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.
.. raw:: html
Show JSON
.. code-block:: 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\u001b[0m\r\n\u001b[1;30m\u0731\u001b[31m\u0732\udcb1\udcdf\udcdb\udcdd\u001b[30m\udcb1\u001b[0m\r\n\u001b[1;30m\udcb2\u001b[31m\udcdf\udcdb\udcdf\udcdf\udcdb\udcdf\udcdf\udcdd\u001b[30m\udcdd\u001b[0m \u001b[1m\udcdb\u001b[32m\udcdb\u001b[30m\udcde\udcdd\u001b[32;42m\udcdf\u001b[0;32m\udcdb \u001b[1;37m\udcdb\u001b[32m\udcdb\u001b[42m\udcdf\u001b[0;32m\udcdb\udcdb\udcdc \u001b[1;37m\udcdb\u001b[32m\udcdb \u001b[37;42m\udcdb\u001b[32;40m\udcdb\u001b[30m\udcde\udcdd\u001b[32;42m\udcdf\u001b[0;32m\udcdb\u001b[37m \u001b[1m\udcdb\u001b[32m\udcdb\u001b[42m\udcdf\u001b[0;32m\udcdb\udcdb\udcdc \u001b[1;37m\udcdb\u001b[32m\udcdb \u001b[37m\udcdb\u001b[32;42m\udcdb\udcdf\u001b[0;32m\udcdb\u001b[37m\r\n\u001b[1;30m\udcde\u001b[31m\udcdc\udcdc\u001b[37;44m\udcdb\udcdf\u001b[31;40m\udcdc\u001b[37;44m\udcdb\udcdf\u001b[31;40m\udcde\u001b[0m \u001b[1;32m\udcdb\u001b[0;32m\udcdb\u001b[1;30m\udcde\udcdd\u001b[0;32m\udcdb\udcdb \u001b[1m\udcdb\u001b[0;32m\udcdb \udcdb\udcdb \u001b[1m\udcdb\u001b[0;32m\udcdb \u001b[1m\udcdf\u001b[42m\udcdc\u001b[0;32m\udcdc\udcdc\udcdb\udcdf\u001b[37m \u001b[1;32m\udcdb\u001b[0;32m\udcdb\udcdc\udcdc\udcdb\udcdf \u001b[1m\udcdb\u001b[0;32m\udcdb \u001b[1;42m\udcdd\u001b[0;32m\udcdb\u001b[37m \u001b[1;33m-\u001b[37mo\u001b[30m)\u001b[0m\r\n \u001b[1;31m\udcde\udcdb\udcdb\udcdd\udcdf\udcdb\udcdb\udcdd\u001b[0m \u001b[1;32;42m\udcdd\u001b[0;32m\udcdb \udcdb\udcdb \u001b[1;42m\udcdd\u001b[0;32m\udcdb\u001b[1;30m\udcde\udcdd\u001b[0;32m\udcdb\udcdb \u001b[1;42m\udcdd\u001b[0;32m\udcdb \u001b[1;42m\udcdd\u001b[0;32m\udcdb\udcdf\udcdf\udcdb\udcdb \u001b[1;37m\udcdb\u001b[32m\udcdb\u001b[42m\udcdf\u001b[0;32m\udcdb\u001b[1;30;42m\udcdc\u001b[40m\udcdb \u001b[32;42m\udcdd\u001b[0;32m\udcdb\udcdf\udcdf\udcdb\udcdb \u001b[1;42m\udcdd\u001b[0;32m\udcdb \udcdb\u001b[1;30;42m\udcde\u001b[0m \u001b[1;30m/\\\\\u001b[0m\r\n \u001b[1;31m\udcdb\udcdd\udcdf\udcdf\udcde\udcdd\u001b[0m \u001b[32m\udcdf\udcdb\udcdb\udcdb\u001b[1;30;42m\udcdc\u001b[40m\udcdf \u001b[0;32m\udcdb\u001b[1;30;42m\udcdc\u001b[40m\udcde\udcdd\u001b[42m\udcdc\udcdb\u001b[0m \u001b[1;30;42m\udcdc\udcdb\u001b[0m \u001b[32m\udcdb\u001b[1;30;42m\udcdc\u001b[40m\udcde\udcdd\u001b[42m\udcdc\udcdb\u001b[0m \u001b[32m\udcdb\udcdb\udcdb\udcdb\u001b[1;30;42m\udcdc\u001b[40m\udcdf \u001b[42m\udcdc\udcdb\u001b[0m \u001b[1;30;42m\udcdc\u001b[40m\udcdb\u001b[0m \u001b[1;33m_\u001b[30m\\\u001b[33m_\u001b[30mV\u001b[0m\r\n \u001b[1;31m\udcdf\udcdc\udcdc\udcdb\u001b[0m\r\n\u001b[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[33munix-bit\r\n\u001b[0;37;40m\u001b[1m \u001b[0;37;40m\u001b[36mADDR: \u001b[1mx-bit.org\r\n\u001b[0;37;40m\u001b[1m \u001b[0;37;40m\u001b[36mNODE: \u001b[1m1 \u001b[0;37;40m\u001b[36m(of \u001b[1m7\u001b[0;37;40m\u001b[36m) - \u001b[1mPop!_OS 22.04 LTS x86_64\r\n\u001b[0;37;40m\u001b[1m \u001b[0;37;40m\u001b[36mTIME: \u001b[1mThu Apr 09 2026 05:31 pm UTC-7:00\r\n\u001b[0;37;40m\u001b[1m \u001b[0;37;40m\u001b[36mADMN: \u001b[1mxbit\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[0m\r\n\u001b[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": "\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\u001b[30;40m\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 2026 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.50394606590271,
"total": 13.442315101623535
}
}
},
"sessions": [
{
"connected": "2026-04-05T19:21:45.534009+00:00",
"host": "x-bit.org",
"ip": "50.38.40.79",
"port": 1336
},
{
"connected": "2026-04-07T06:25:35.381461+00:00",
"host": "x-bit.org",
"ip": "50.38.40.79",
"port": 1336
},
{
"connected": "2026-04-10T00:31:20.850724+00:00",
"host": "x-bit.org",
"ip": "50.38.40.79",
"port": 1336
}
]
}
.. raw:: html
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 `_
.. code-block:: shell
telnetlib3-fingerprint --loglevel=debug x-bit.org 1336
.. raw:: html
Show Logfile
.. code-block:: text
DEBUG client.py:1193 Fingerprint client: host=x-bit.org port=1336
INFO client_base.py:188 Connected to
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.28s.
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
.. raw:: html
.. _ip_50_38_40_79_x-bit_org_2112:
x-bit.org:2112
--------------
**Connection Banner:**
.. image:: /_static/banners/banner_86361a0732f2.png
:alt: Welcome ! The X-Bit BBS Game Server Ver. i721.32i Registered to xbit.ops@gmail.com Todays Hits ... 53 Total Hits ... 5200 Enter Your User Name : \_
:class: ansi-banner
:width: 322px
:loading: lazy
Server URLs
~~~~~~~~~~~
.. raw:: html
**Server Location**: πΊπΈ United States (GeoIP)
BBS Software
~~~~~~~~~~~~
**Reported**: Synchronet
Encoding
~~~~~~~~
- **Effective encoding**: ascii
- **Scanner detected**: ascii
Telnet Fingerprint
~~~~~~~~~~~~~~~~~~
:ref:`e89ffa4fe5c32389 `
*This fingerprint is shared by 132 other servers.*
The complete JSON record collected during the scan,
including Telnet negotiation results and
banner data.
.. raw:: html
Show JSON
.. code-block:: json
{
"server-probe": {
"fingerprint": "e89ffa4fe5c32389",
"fingerprint-data": {
"offered-options": [],
"probed-protocol": "server",
"refused-options": [
"AARDWOLF",
"ATCP",
"BINARY",
"CHARSET",
"COM_PORT",
"ECHO",
"EOR",
"GMCP",
"MCCP2",
"MCCP3",
"MSDP",
"MSP",
"MSSP",
"MXP",
"SGA",
"STATUS",
"ZMP"
],
"requested-options": [],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "",
"banner_before_return": "\u001b[1;37;40m\u001b[0m\u001b[2J\r\n\u001b[0;37;40mWelcome !\r\n\r\n\u001b[0;1;37mThe X-Bit BBS Game Server Ver. i721.32i\r\n\r\n\u001b[32mRegistered to xbit.ops@gmail.com\r\n\u001b[33mTodays Hits ... 53\r\n\u001b[36mTotal Hits ... 5200\r\n\r\n\u001b[33mEnter Your User\u001b[0;1;37m Name :\u001b[0;37;40m _",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"option_states": {
"server_offered": {},
"server_requested": {}
},
"scan_type": "quick",
"timing": {
"probe": 0.5069437026977539,
"total": 11.01666259765625
}
}
},
"sessions": [
{
"connected": "2026-04-05T19:10:36.175775+00:00",
"host": "x-bit.org",
"ip": "50.38.40.79",
"port": 2112
},
{
"connected": "2026-04-07T06:09:02.670471+00:00",
"host": "x-bit.org",
"ip": "50.38.40.79",
"port": 2112
}
]
}
.. raw:: html
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 `_
.. code-block:: shell
telnetlib3-fingerprint --loglevel=debug x-bit.org 2112
.. raw:: html
Show Logfile
.. code-block:: text
DEBUG client.py:1200 Fingerprint client: host=x-bit.org port=2112
INFO client_base.py:190 Connected to
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 + 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 + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_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 + 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 + 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[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_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 + 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 + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_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 + 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 + 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 client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'WILL MCCP3_COMPRESS, WILL GMCP, WILL AARDWOLF, WILL ATCP, WILL MCCP2_COMPRESS, WILL MSSP,
WILL MXP, WILL MSP, WILL ZMP, WILL MSDP, DO MCCP3_COMPRESS, DO GMCP, DO AARDWOLF, DO ATCP, DO MCCP2_COMPRESS, DO MSSP, DO MXP,
DO MSP, DO ZMP, DO MSDP'
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 fingerprinting.py:849 connection for server fingerprint e89ffa4fe5c32389
INFO client_base.py:122 Connection closed to
.. raw:: html
.. _ip_50_38_40_79_x-bit_org_23230:
x-bit.org:23230
---------------
**Connection Banner:**
.. image:: /_static/banners/banner_55808ce033df.png
:alt: β Error correction modem detected. β Testing for RIP terminal, please stand by... ! //// (o o) oOO (_) OOo βββββββββββββββββββ ββββββ[ SPITFIRE BBS ]ββββββββββββββββββββββββββββββββββββ‘ 32-Bit BBS β β βββββββββ₯ββββββββββ β For the best experience type [Y]es for color ANSI displays. β β NEW USERS: Personal Information is NOT required. When asked β β for First/Last name you can use Alias/Handel if you wish. β β When asked for phone #, just type some cool numbers :) β β β ββββββββββββββββββ[ Sysop Contact: xbit.ops@gmail.com ]βββββββββββ Your Sysop is Xbit Ops - Node 1 SPITFIRE Bulletin Board System - Version 3.7 Buffalo Creek Software Copyright (C) by Mike Woltz, 1987-2010 Licensed to Rob McGee for use. Serial Number SF373354 Do you want ANSI COLOR GRAPHICS? [y/N] Yes ββββββ ββββββββββββββ βββββββ ββββ βββββ βββββββ ββββββββββ βββββ ββββββ βββββββ βββββββ βββ ββββ ββββββββ ββ ββββ ββ βββ βββββββ βββββ βββββ ββ βββ ββββββ βββββββββββ ββββββ βββββ ββββ ββββββββββ βββββ βββββββββββ β β ββββββββ ββββββββββββββββββββββββββββββββββββββββββββββββ β β β βββββββββββββββββββββββββββββββββββββββββββββββββ β ββββββ ββββββ β β β ββββββββββββββββββββββββββββββββββββββββββββββ ββ ββ β β βββββ β β β ββββββββββββββββββββββββββββββββββββββββββββββββββ ββββββ ββββββ β β β β βββββββββββββββWβEβLβCβOβMβEβ!ββββββββββββββββββ βββββ βββββ β β β βββ βββββββββββββββββββββ βββββββββββββββββββ ββ...β ββββββββββββββββ β β ββββββββββββββββββββββββββββββββββββββββββββ β βββ βββββ β β β ββ ββββββββββββββββββββββββββββββββββββββββββ β βββ βββ βββββββββ ββ β β β β βββ βββ ββββββββββ ββ β β β \* True retro BBS \* Running Spitfire 3.7 ββββ ββββββββββ βββ β β β \* Telnet Access \* 4 nodes β Β·Β·Β· βββ βββββββ βββ β β β \* 100s of doors \* Inter-BBS gaming βββββββββ ββββββ βββ β β β \* Chat Lob by\* x-bit.org/info ββββ©βββββ ββββ ββ β β β βββββββββββββββββββββββ β β ββββββββββββββββββββββββββββββββββββββββββββββ Enter your first name: Enter your first name:
:class: ansi-banner
:width: 640px
:loading: lazy
Server URLs
~~~~~~~~~~~
.. raw:: html
**Server Location**: πΊπΈ United States (GeoIP)
BBS Software
~~~~~~~~~~~~
**Reported**: Synchronet
Encoding
~~~~~~~~
- **Effective encoding**: cp437
- **Override**: cp437 (from bbslist.txt)
- **Scanner detected**: cp437
Telnet Fingerprint
~~~~~~~~~~~~~~~~~~
:ref:`0027751c27595134 `
*This fingerprint is shared by 2 other servers.*
**Options offered by server**: ``COM_PORT``, ``ECHO``, ``SGA``
**Options requested from client**: ``BINARY``
The complete JSON record collected during the scan,
including Telnet negotiation results and
banner data.
.. raw:: html
Show JSON
.. code-block:: json
{
"server-probe": {
"fingerprint": "0027751c27595134",
"fingerprint-data": {
"offered-options": [
"COM_PORT",
"ECHO",
"SGA"
],
"probed-protocol": "server",
"refused-options": [
"AARDWOLF",
"ATCP",
"BINARY",
"CHARSET",
"EOR",
"GMCP",
"MCCP2",
"MCCP3",
"MSDP",
"MSP",
"MSSP",
"MXP",
"STATUS",
"ZMP"
],
"requested-options": [
"BINARY"
],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "\r\n ////\r\n (o o)\r\n oOO (_) OOo\r\n \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\r\n\u2554\u2550\u2550\u2550\u2550\u2550[ SPITFIRE BBS ]\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2561 32-Bit BBS \u2502\r\n\u2551 \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2565\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\r\n\u2551 For the best experience type [Y]es for color ANSI displays. \u2551\r\n\u2551 NEW USERS: Personal Information is NOT required. When asked \u2551\r\n\u2551 for First/Last name you can use Alias/Handel if you wish. \u2551\r\n\u2551 When asked for phone #, just type some cool numbers :) \u2551\r\n\u2551 \u2551\r\n\u255a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550[ Sysop Contact: xbit.ops@gmail.com ]\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255d\r\n \r\nYour Sysop is Xbit Ops - Node 1\r\nSPITFIRE Bulletin Board System - Version 3.7\r\nBuffalo Creek Software\r\nCopyright (C) by Mike Woltz, 1987-2010\r\nLicensed to Rob McGee for use.\r\nSerial Number SF373354\r\n\r\nDo you want ANSI COLOR GRAPHICS? [y/N] Yes\r\n\r\n\u001b[0;37;40;1m\u001b[?7h\u001b[40m\u001b[2J\u001b[0;1m \u001b[D \u001b[D\u001b[2;1H \u001b[0;5;31;42m\u2593\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2584 \u001b[0;5;32;41m\u2592\u2592\u2592\u2592\u2592\u001b[0;1;30m\u2584\u001b[7C\u001b[5;32;44m\u2592\u001b[0;1;30m\u2584\u001b[5C\u001b[5;31;44m\u2593\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2584 \u001b[5;36;41m\u2592\u2592\u2592\u2592\u2592\u001b[0;1;30m\u2584\u001b[13C\u2584\u001b[3;1H \u2580\u2580\u001b[0;5;31;42m\u2593\u001b[0;1;30m\u2588 \u2580\u2580\u2580\u001b[0;5;32;41m\u2592\u001b[0;1;30m\u2588\u001b[7C\u001b[s\r\n\u001b[u\u001b[5;32;44m\u2592\u001b[0;1;30m\u2588\u001b[6C\u2580\u001b[5;31;44m\u2593\u001b[0;1;30m\u2588\u2580\u2580 \u2580\u001b[5;36;41m\u2592\u001b[0;1;30m\u2588\u2580\u2580\u001b[11C\u2584\u2588\u2580\u2588\u2584\u001b[4;1H \u001b[0;5;31;42m\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2588 \u001b[0;5;32;41m\u2592\u2592\u2592\u2592\u2592\u001b[0;1;30m\u2588 \u001b[0;5;34;45m\u2591\u001b[4C\u001b[1;32;44m\u2592\u2592\u2592\u2592\u2592\u001b[0;1;30m\u2584 \u001b[5;31;44m\u2593\u001b[0;1;30m\u2588\u001b[5C\u001b[5;36;41m\u2592\u001b[0;1;30m\u2588\u001b[11C\u2588\u2580\u2580 \u001b[s\r\n\u001b[u \u2580\u2588\u2584\u001b[5;1H \u2580\u2580\u001b[0;5;31;42m\u2593\u001b[0;1;30m\u2588 \u001b[0;5;32;41m\u2592\u001b[0;1;30m\u2588\u2580\u2580\u2580\u2580\u001b[7C\u001b[5;32;44m\u2592\u001b[0;1;30m\u2588 \u001b[5;32;44m\u2592\u001b[0;1;30m\u2588 \u001b[5;31;44m\u2593\u001b[0;1;30m\u2588\u001b[5C\u001b[5;36;41m\u2592\u001b[0;1;30m\u2588 \u2580\u2580 \u2580\u2580\u2580 \u2580\u2580\u2580\u2580\u001b[7C\u2580\u2588\u2584 \u2584\u2584\u2580\u2580\u2580 \u2580\u2580\u2580\u2580\u2580 \u2580\u2580 \u2580\u2580\u2580\u001b[6;1H \u001b[0;5;31;42m\u2593\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2588 \u001b[s\r\n\u001b[u\u001b[0;5;32;41m\u2592\u2592\u2592\u2592\u2592\u001b[8C\u001b[1;44m\u2592\u2592\u2592\u2592\u2592\u001b[0;1;30m\u2588 \u001b[5;31;44m\u2593\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2584 \u001b[5;36;41m\u2592\u001b[0;1;30m\u2588\u001b[21C\u2580\u2588\u2580\u001b[7;1H \u2580\u2580\u2580\u2580 \u2580\u2580\u2580\u2580\u2580\u001b[8C\u2580\u2580\u2580\u2580\u2580 \u2580\u2580\u2580\u2580\u2580 \u2580\u001b[8;1H\u001b[5C\u001b[5;32;44m\u2592\u001b[0;1;30m\u2584\u001b[6C\u001b[0;5;32;41m\u2593\u001b[0;1;30m\u2584\u001b[5C\u001b[5;36;45m\u2593\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2584 \u2592 \u2593 \u001b[0m\u2588\u2580\u2580\u2580\u2580\u2580\u2580\u2580\u001b[s\r\n\u001b[u\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[9;1H\u001b[5C\u001b[1;5;32;44m\u2592\u001b[0;1;30m\u2588\u001b[6C\u001b[0;5;32;41m\u2593\u001b[0;1;30m\u2588\u001b[5C\u001b[5;36;45m\u2593\u001b[0;1;30m\u2588\u2580\u2580\u2580\u2580 \u2592 \u2593 \u001b[0m\u2588 \u001b[1m\u2588\u2588\u2588\u001b[47m\u2580\u2580\u2580\u2580\u001b[0m\u2588\u001b[1;30;47m\u2584\u2584\u2584\u001b[40m\u2588\u2580\u2580\u2580\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[10;1H\u001b[5C\u001b[5;32;44m\u2592\u2592\u2592\u2592\u2592\u001b[40m\u001b[s\r\n\u001b[u\u001b[0;1;30m\u2584 \u001b[0;5;32;41m\u2593\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2584 \u001b[5;36;45m\u2593\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2584 \u2592 \u2593 \u001b[0m\u2588 \u001b[1m\u2588\u001b[0m\u2588\u001b[1m\u2588\u2588\u001b[0m\u2588\u001b[1;30m\u2588\u2588\u2588\u2588\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[11;1H\u001b[5C\u001b[5;32;44m\u2592\u001b[0;1;30m\u2588 \u001b[5;32;44m\u2592\u001b[0;1;30m\u2588 \u001b[0;5;32;41m\u2593\u001b[0;1;30m\u2588 \u001b[0;5;32;41m\u2593\u001b[40m\u001b[s\r\n\u001b[u\u001b[0;1;30m\u2588 \u2580\u2580\u2580\u001b[5;36;45m\u2593\u001b[0;1;30m\u2588 \u2592 \u2593 \u001b[0m\u2588 \u001b[1m\u2588\u001b[0m\u2588\u001b[1;30;47m\u2584\u2584\u001b[0m\u2588\u2588\u001b[1;30m\u2588\u001b[0m\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[12;1H\u001b[5C\u001b[1;5;32;44m\u2592\u2592\u2592\u2592\u2592\u001b[0;1;30m\u2588 \u001b[0;5;32;41m\u2593\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2588 \u001b[5;36;45m\u2593\u2593\u2593\u2593\u2593\u001b[0;1;30m\u2588 \u2592 \u2593 \u001b[0m\u2588 \u2588\u001b[s\r\n\u001b[u\u001b[1;30;47m\u2584\u001b[40m\u2588\u2580\u2580\u2580\u2588\u2588\u001b[0m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u001b[1;33mW\u001b[0m\u2500\u001b[1;33mE\u001b[0m\u2500\u001b[1;33mL\u001b[0m\u2500\u001b[1;33mC\u001b[0m\u2500\u001b[1;33mO\u001b[0m\u2500\u001b[1;33mM\u001b[0m\u2500\u001b[1;33mE\u001b[0m\u2500\u001b[1;33m!\u001b[0m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u001b[13;1H\u001b[6C\u001b[1;30m\u2580\u2580\u2580\u2580\u2580 \u2580\u2580\u2580\u2580\u2580 \u2580\u2580\u2580\u2580\u2580 \u2592 \u2593 \u001b[0m\u2588 \u2588\u001b[1;30m\u2588\u2580 \u001b[0m\u2500\u2500\u2500\u2500\u001b[1;30m\u2580\u001b[0m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u001b[s\r\n\u001b[u\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u001b[14;1H \u2588\u2588\u001b[30;47m...\u25a0\u001b[37;40m\u2588\u001b[1;30m\u2588\u2580\u001b[0m\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u2584\u001b[6C\u001b[1;30m\u2592 \u2593 \u001b[0m\u2588 \u001b[1;30m\u2588\u2588\u001b[36m\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[15;1H \u001b[0m\u258c \u2500\u001b[1;30m\u2500\u001b[0m\u2500 \u2590\u001b[1;30m\u2588\u001b[0m\u2590\u001b[12C\u001b[1;30;47m\u2590\u001b[40m\u258c \u2592 \u2593 \u001b[0m\u2588 \u001b[1;30m\u2588\u001b[37m\u2500\u001b[s\r\n\u001b[u\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[16;1H \u001b[0m\u258c \u2500\u001b[1;30m\u2500\u001b[0m\u2500 \u2590\u001b[1;30m\u2588\u001b[0m\u2590 \u001b[1;30m\u2584\u2592\u001b[31m\u2584\u2593\u2592\u2580\u2588\u2584\u001b[30m\u2593 \u001b[47m\u2590\u001b[40m\u258c \u2592 \u2593 \u001b[0m\u2588\u001b[17;1H \u258c \u2500\u001b[1;30m\u2500\u001b[0m\u2500 \u2590\u001b[1;30m\u2588\u001b[0m\u2590 \u001b[1;30m\u2593\u001b[31m\u2580\u2588\u2580\u2580\u2588\u2580\u2580\u258c\u001b[30m\u2592 \u001b[47m\u2590\u001b[40m\u2588 \u2592 \u2593 \u001b[0m\u2588 \u001b[1m* True \u001b[s\r\n\u001b[u\u001b[0;32mr\u001b[1;31me\u001b[0;36mt\u001b[33mr\u001b[1;35mo \u001b[37mBBS * Running \u001b[31mSpitfire \u001b[37m3.7\u001b[18;1H \u001b[0m\u258c\u001b[5C\u2590\u001b[1;30m\u2588\u001b[0m\u2590 \u001b[1;30m\u2590\u001b[31m\u2588\u2584\u001b[37m\u2590\u001b[44m\u2580\u001b[31;40m\u2584\u001b[37m\u2590\u001b[44m\u2580\u001b[31;40m\u258c\u001b[30m\u258c \u001b[47m\u2590\u001b[40m\u2588\u258c \u2592 \u2593 \u001b[0m\u2588 \u001b[1m* Telnet Access * 4 nodes\u001b[19;1H \u001b[s\r\n\u001b[u\u001b[0m\u258c \u001b[5;36m\u00b7\u001b[0;1;31m\u00b7\u001b[0;32m\u00b7 \u001b[37m\u2590\u001b[1;30m\u2588\u001b[0m\u2590 \u001b[1;31m\u2580\u2588\u2588\u258c\u2580\u2588\u2588 \u001b[30;47m\u2590\u001b[40m\u2588\u2588 \u2592 \u2593 \u001b[0m\u2588 * 100s of doors * Inter-BBS gaming\u001b[20;1H \u2588\u2588\u001b[30;47m\u2551\u2551\u2551\u001b[37;40m\u2588\u2588\u001b[1;30m\u2588\u001b[0m\u2590 \u001b[1;31m\u2590\u2584\u2580\u2580\u2590\u258c \u001b[30;47m\u2590\u001b[40m\u2588\u2588 \u2592 \u2593 \u001b[0m\u2588 \u001b[1;30m* Chat Lob\u001b[s\r\n\u001b[uby\u001b[6C* x-bit.org/info\u001b[21;1H \u001b[0m\u2588\u2588\u001b[30;47m\u255a\u2569\u255d\u001b[37;40m\u2588\u2588\u001b[1;30m\u2588\u001b[0m\u2590 \u001b[1;31m\u2580\u2580\u2580\u2580 \u001b[30;47m\u2590\u001b[40m\u2588 \u2592 \u2593 \u001b[0m\u2588\u001b[22;1H \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[1;30m\u2588\u001b[0m\u2590\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[1;30;47m\u2590\u001b[40m\u2580 \u2592 \u2593 \u001b[0m\u2588\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\u2584\r\n\u001b[0;37;40;1m\u001b[0;37;40;1mEnter your first name: \u001b[0;36;40;1m\r\n\u001b[0;37;40;1mEnter your first name: \u001b[0;36;40;1m",
"banner_before_return": "\u001b[6n\r\u001b[6n\r\u25a0 Error correction modem detected.\r\n\r\u25a0 Testing for RIP terminal, please stand by...\r\n\u001b[!\r \r",
"dsr_replies": 1,
"dsr_requests": 1,
"encoding": "cp437",
"option_states": {
"server_offered": {
"AARDWOLF": false,
"ATCP": false,
"ECHO": true,
"GMCP": false,
"MCCP2": false,
"MCCP3": false,
"MSDP": false,
"MSP": false,
"MSSP": false,
"MXP": false,
"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.5476512908935547,
"total": 27.988539457321167
}
}
},
"sessions": [
{
"connected": "2026-04-05T19:16:29.840730+00:00",
"host": "x-bit.org",
"ip": "50.38.40.79",
"port": 23230
},
{
"connected": "2026-04-07T05:52:25.021951+00:00",
"host": "x-bit.org",
"ip": "50.38.40.79",
"port": 23230
},
{
"connected": "2026-04-08T17:09:40.714973+00:00",
"host": "x-bit.org",
"ip": "50.38.40.79",
"port": 23230
},
{
"connected": "2026-04-10T00:33:17.471828+00:00",
"host": "x-bit.org",
"ip": "50.38.40.79",
"port": 23230
}
]
}
.. raw:: html
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 `_
.. code-block:: shell
telnetlib3-fingerprint --loglevel=debug x-bit.org 23230
.. raw:: html
Show Logfile
.. code-block:: text
DEBUG client.py:1193 Fingerprint client: host=x-bit.org port=23230
INFO client_base.py:188 Connected to
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 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 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 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 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 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 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 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 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 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 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 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 WILL ECHO
DEBUG stream_writer.py:789 WILL ECHO unsolicited
DEBUG stream_writer.py:2045 handle_will(ECHO)
DEBUG stream_writer.py:773 recv IAC DO BINARY
DEBUG stream_writer.py:1887 handle_do(BINARY)
DEBUG client_base.py:510 negotiation complete after 0.11s.
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 + 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 WILL SGA
DEBUG stream_writer.py:2045 handle_will(SGA)
DEBUG stream_writer.py:998 skip DO SGA; pending_option = True
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 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 WILL COM_PORT_OPTION
DEBUG stream_writer.py:2045 handle_will(COM_PORT_OPTION)
DEBUG stream_writer.py:998 skip DO COM_PORT_OPTION; pending_option = True
DEBUG stream_writer.py:3384 remote_option[COM_PORT_OPTION] = True
DEBUG stream_writer.py:1138 send IAC SB COM-PORT-OPTION SIGNATURE IAC SE
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = False
DEBUG fingerprinting.py:844 connection for server fingerprint 0027751c27595134
INFO client_base.py:120 Connection closed to
.. raw:: html