45.24.186.196 (x.a-net.online) ============================== .. _ip_45_24_186_196_x_a-net_online_1337: x.a-net.online:1337 ------------------- **Connection Banner:** .. image:: /_static/banners/banner_933c97c24ca4.png :alt: ▄██▄ ███▄ ▀████ ▀▀██▀▀▀ █▀▀▀█ ███▄ █ ▀▀▀██▀▀▀ ███▄ ▀████ ▄█ ██ ██ ██ ▀█▄▄▄ ██ █ █ ██ ██ █ ██ ██ ██ ▀█▄▄▄ ▄█████▀▀██ ██ ██▀▀ ██ █ █ ██ ██ █ ██ ██ ██ ██▀▀ ▀▀ ▀▀ ▀▀ ▀▀ ▀▀▀▀▀ ▀▀ ▀▀▀▀▀ ▀▀ ▀▀ ▀▀▀▀ ▀▀▀▀▀▀ ▀▀ ▀▀ ▀▀▀▀▀ ┌──────────────────────────────────────────────────┐ │ [1] A-Net Online Main Synchronet BBS Telnet │ │ a-net.online:23 │ │ │ │ [2] A-Net Online Mystic BBS Telnet │ │ mystic-anet.online:23 │ │ │ │ [3] A-Net Online Spitfire BBS Telnet │ │ sf.a-net.online:2323 │ │ │ │ [4] A-Net Online Linux Synchronet BBS Telnet │ │ x.a-net.online:2323 │ │ │ │ [5] Exit/Logoff │ └──────────────────────────────────────────────────┘ Enter your choice: H╟Γσ :class: ansi-banner :width: 587px :loading: lazy Server URLs ~~~~~~~~~~~ .. raw:: html **Server Location**: 🇺🇸 United States (GeoIP) Listing ~~~~~~~ - **BBS Name**: A-Net Online Beta BBS (from listing) - **Sysop**: Jerry Reed - **Listed Location**: Woodstock, GA, USA BBS Software ~~~~~~~~~~~~ **Detected**: Synchronet Encoding ~~~~~~~~ - **Effective encoding**: cp437 - **Override**: cp437 (from bbslist.txt) - **Scanner detected**: cp437 Telnet Fingerprint ~~~~~~~~~~~~~~~~~~ :ref:`ea8f4f2e7ae06c5b ` *This fingerprint is shared by 2 other servers.* **Options offered by server**: ``AARDWOLF``, ``ATCP``, ``GMCP``, ``MCCP2``, ``MCCP3``, ``MSDP``, ``MSP``, ``MSSP``, ``MXP``, ``ZMP`` **Options requested from client**: ``AARDWOLF``, ``ATCP``, ``GMCP``, ``MCCP2``, ``MCCP3``, ``MSDP``, ``MSP``, ``MSSP``, ``MXP``, ``ZMP`` 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": "ea8f4f2e7ae06c5b", "fingerprint-data": { "offered-options": [ "AARDWOLF", "ATCP", "GMCP", "MCCP2", "MCCP3", "MSDP", "MSP", "MSSP", "MXP", "ZMP" ], "probed-protocol": "server", "refused-options": [ "BINARY", "CHARSET", "COM_PORT", "ECHO", "EOR", "SGA", "STATUS" ], "requested-options": [ "AARDWOLF", "ATCP", "GMCP", "MCCP2", "MCCP3", "MSDP", "MSP", "MSSP", "MXP", "ZMP" ], "scan-type": "quick" }, "session_data": { "banner_after_return": "H\u255f\u0393\u03c3\u0002\u0000\u0000\u0000\u00a0", "banner_before_return": "\u001b[0m\r\n \u001b[1;31m\u2584\u2588\u2588\u2584\u001b[0;31m \u001b[1m\u2588\u2588\u2588\u2584\u001b[0;31m \u001b[1m\u2580\u2588\u2588\u2588\u2588 \u2580\u2580\u2588\u2588\u2580\u2580\u2580\u001b[0m \u001b[1;31m\u2588\u2580\u2580\u2580\u2588\u001b[0m \u001b[1;31m\u2588\u2588\u2588\u2584\u001b[0;31m \u001b[1m\u2588\u001b[0m \u001b[1;31m\u2580\u2580\u2580\u2588\u2588\u2580\u2580\u2580\u001b[0m \u001b[1;31m\u2588\u2588\u2588\u2584\u001b[0;31m \u001b[1m\u2580\u2588\u2588\u2588\u2588\u001b[0m\r\n \u001b[1;31;41m\u2584\u001b[40m\u2588\u001b[0m \u001b[1;31m\u2588\u2588\u001b[0m \u001b[1;31m\u2588\u2588\u001b[0;31m \u001b[1m\u2588\u2588\u001b[0;31m \u001b[1m\u2580\u2588\u2584\u2584\u2584\u001b[0;31m \u001b[1m\u2588\u2588\u001b[0m \u001b[1;31m\u2588\u001b[0m \u001b[1;31m\u2588\u001b[0m \u001b[1;31m\u2588\u2588\u001b[0;31m \u001b[1m\u2588\u2588\u001b[0m \u001b[1;31m\u2588\u001b[0m \u001b[1;31m\u2588\u2588 \u2588\u2588\u001b[0;31m \u001b[1m\u2588\u2588\u001b[0;31m \u001b[1m\u2580\u2588\u2584\u2584\u2584\u001b[0m\r\n \u001b[1;31;41m\u2584\u001b[40m\u2588\u2588\u2588\u2588\u2588\u001b[0;31m\u2580\u2580\u001b[1m\u2588\u2588\u001b[0;31m \u001b[1m\u2588\u2588\u001b[0;31m \u001b[1m\u2588\u2588\u2580\u2580\u001b[0m \u001b[1;31m\u2588\u2588\u001b[0m \u001b[1;31m\u2588\u001b[0m \u001b[1;31m\u2588\u001b[0m \u001b[1;31m\u2588\u2588\u001b[0;31m \u001b[1m\u2588\u2588\u001b[0m \u001b[1;31m\u2588\u001b[0m \u001b[1;31m\u2588\u2588\u001b[0m \u001b[1;31m\u2588\u2588\u001b[0;31m \u001b[1m\u2588\u2588\u001b[0;31m \u001b[1m\u2588\u2588\u2580\u2580\u001b[0m\r\n \u001b[1;31;41m\u2580\u2580\u001b[0m \u001b[1;31;41m\u2580\u2580\u001b[0m \u001b[1;31;41m\u2580\u2580\u001b[0;31m \u001b[1;41m\u2580\u2580\u001b[0;31m \u001b[1;41m\u2580\u2580\u2580\u2580\u2580\u001b[0m \u001b[1;31;41m\u2580\u2580\u001b[0m \u001b[1;31;41m\u2580\u2580\u2580\u2580\u2580\u001b[0m \u001b[1;31;41m\u2580\u2580\u001b[0;31m \u001b[1;41m\u2580\u2580\u001b[0m \u001b[1;31;41m\u2580\u2580\u2580\u2580\u001b[40m \u001b[41m\u2580\u2580\u2580\u2580\u2580\u2580\u001b[0m \u001b[1;31;41m\u2580\u2580\u001b[0;31m \u001b[1;41m\u2580\u2580\u001b[0;31m \u001b[1;41m\u2580\u2580\u2580\u2580\u2580\u001b[0m\r\n\r\n \u001b[36m\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u001b[1m\u2510\u001b[0m\r\n \u001b[36m\u2502 \u001b[37m[\u001b[1m1\u001b[0m] \u001b[1mA-Net Online Main Synchronet BBS\u001b[0m \u001b[1;31mTelnet\u001b[0;36m \u001b[1m\u2502\u001b[0m\r\n \u001b[36m\u2502 \u001b[1;30ma-net.online:23\u001b[0m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[37m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[1;34m \u001b[0m[\u001b[1m2\u001b[0m] \u001b[1mA-Net Online Mystic BBS\u001b[0m \u001b[1;31mTelnet\u001b[0m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[37m \u001b[1;30mmystic-anet.online:23\u001b[0m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[37m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[37m [\u001b[1m3\u001b[0m] \u001b[1mA-Net Online\u001b[0m \u001b[1mSpitfire BBS\u001b[0m \u001b[1;31mTelnet\u001b[0m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[34m \u001b[1;30msf.a-net.online:2323\u001b[0m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[34m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[37m [\u001b[1m4\u001b[0m] \u001b[1mA-Net Online Linux Synchronet BBS\u001b[0m \u001b[1;31mTelnet\u001b[0m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[37m \u001b[1;30mx.a-net.online:2323\u001b[0m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[37m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2502\u001b[37m [\u001b[1m5\u001b[0m] \u001b[1mExit/Logoff\u001b[0m \u001b[1;36m\u2502\u001b[0m\r\n \u001b[36m\u2514\u001b[1m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\u001b[0m\r\n\r\nEnter your choice: ", "dsr_replies": 0, "dsr_requests": 0, "encoding": "cp437", "option_states": { "server_offered": { "AARDWOLF": true, "ATCP": true, "GMCP": true, "MCCP2": true, "MCCP3": true, "MSDP": true, "MSP": true, "MSSP": true, "MXP": true, "ZMP": true }, "server_requested": { "AARDWOLF": true, "ATCP": true, "GMCP": true, "MCCP2": true, "MCCP3": true, "MSDP": true, "MSP": true, "MSSP": true, "MXP": true, "ZMP": true } }, "scan_type": "quick", "timing": { "probe": 0.5061283111572266, "total": 11.135604619979858 } } }, "sessions": [ { "connected": "2026-04-08T22:41:31.833935+00:00", "host": "x.a-net.online", "ip": "45.24.186.196", "port": 1337 }, { "connected": "2026-04-09T00:05:33.599055+00:00", "host": "x.a-net.online", "ip": "45.24.186.196", "port": 1337 } ] } .. 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.a-net.online 1337 .. raw:: html
Show Logfile .. code-block:: text DEBUG client.py:1193 Fingerprint client: host=x.a-net.online port=1337 INFO client_base.py:188 Connected to DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = True DEBUG stream_writer.py:1024 send IAC WILL MSDP DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True DEBUG stream_writer.py:1024 send IAC WILL MSSP DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = True DEBUG stream_writer.py:1024 send IAC WILL ZMP 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 + GMCP] = True DEBUG stream_writer.py:1024 send IAC WILL GMCP 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 + 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 + MSP] = True DEBUG stream_writer.py:1024 send IAC WILL 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 + MSDP] = True DEBUG stream_writer.py:1024 send IAC DO MSDP DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True DEBUG stream_writer.py:1024 send IAC DO MSSP DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = True DEBUG stream_writer.py:1024 send IAC DO ZMP 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 + GMCP] = True DEBUG stream_writer.py:1024 send IAC DO GMCP 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 + 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 + MSP] = True DEBUG stream_writer.py:1024 send IAC DO MSP 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 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 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 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 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 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 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 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 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 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 client_base.py:489 MCCP3 compression started (client→server) DEBUG stream_writer.py:773 recv IAC DO MCCP2_COMPRESS DEBUG stream_writer.py:1887 handle_do(MCCP2_COMPRESS) DEBUG stream_writer.py:998 skip WILL MCCP2_COMPRESS; pending_option = True DEBUG stream_writer.py:3384 local_option[MCCP2_COMPRESS] = True DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = False DEBUG stream_writer.py:773 recv IAC DO MSDP DEBUG stream_writer.py:1887 handle_do(MSDP) DEBUG stream_writer.py:998 skip WILL MSDP; pending_option = True DEBUG stream_writer.py:3384 local_option[MSDP] = True DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False DEBUG stream_writer.py:773 recv IAC DO MSSP DEBUG stream_writer.py:1887 handle_do(MSSP) DEBUG stream_writer.py:998 skip WILL MSSP; pending_option = True DEBUG stream_writer.py:3384 local_option[MSSP] = True DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = False DEBUG stream_writer.py:773 recv IAC DO ZMP DEBUG stream_writer.py:1887 handle_do(ZMP) DEBUG stream_writer.py:998 skip WILL ZMP; pending_option = True DEBUG stream_writer.py:3384 local_option[ZMP] = True DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = False DEBUG stream_writer.py:773 recv IAC DO ATCP DEBUG stream_writer.py:1887 handle_do(ATCP) DEBUG stream_writer.py:998 skip WILL ATCP; pending_option = True DEBUG stream_writer.py:3384 local_option[ATCP] = True DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = False DEBUG stream_writer.py:773 recv IAC DO GMCP DEBUG stream_writer.py:1887 handle_do(GMCP) DEBUG stream_writer.py:998 skip WILL GMCP; pending_option = True DEBUG stream_writer.py:3384 local_option[GMCP] = True DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = False DEBUG stream_writer.py:773 recv IAC DO MCCP3_COMPRESS DEBUG stream_writer.py:1887 handle_do(MCCP3_COMPRESS) DEBUG stream_writer.py:998 skip WILL MCCP3_COMPRESS; pending_option = True DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = True DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False DEBUG stream_writer.py:773 recv IAC DO MXP DEBUG stream_writer.py:1887 handle_do(MXP) DEBUG stream_writer.py:998 skip WILL MXP; pending_option = True DEBUG stream_writer.py:3384 local_option[MXP] = True DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False DEBUG stream_writer.py:773 recv IAC DO AARDWOLF DEBUG stream_writer.py:1887 handle_do(AARDWOLF) DEBUG stream_writer.py:998 skip WILL AARDWOLF; pending_option = True DEBUG stream_writer.py:3384 local_option[AARDWOLF] = True DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = False DEBUG stream_writer.py:773 recv IAC DO MSP DEBUG stream_writer.py:1887 handle_do(MSP) DEBUG stream_writer.py:998 skip WILL MSP; pending_option = True DEBUG stream_writer.py:3384 local_option[MSP] = True DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = False DEBUG client_base.py:510 negotiation complete after 0.18s. DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited DEBUG client.py:210 GMCP: Core.Hello {'client': 'telnetlib3', 'version': '4.0.2'} DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited DEBUG client.py:210 GMCP: 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:767 begin sub-negotiation SB MCCP3_COMPRESS DEBUG stream_writer.py:754 sub-negotiation cmd MCCP3_COMPRESS SE completion byte DEBUG stream_writer.py:2238 [SB + MCCP3_COMPRESS] unsolicited DEBUG stream_writer.py:3228 MCCP3: server received SB, client→server compression active 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:732 IAC b'\x97': not a legal 2-byte cmd, treating as data DEBUG stream_writer.py:732 IAC b'\x97': not a legal 2-byte cmd, treating as data DEBUG stream_writer.py:732 IAC b'\x97': not a legal 2-byte cmd, treating as data DEBUG stream_writer.py:732 IAC b'\x97': not a legal 2-byte cmd, treating as data DEBUG stream_writer.py:732 IAC MCCP3_COMPRESS: not a legal 2-byte cmd, treating as data DEBUG stream_writer.py:732 IAC MCCP3_COMPRESS: not a legal 2-byte cmd, treating as data DEBUG stream_writer.py:732 IAC MCCP3_COMPRESS: not a legal 2-byte cmd, treating as data DEBUG fingerprinting.py:850 connection for server fingerprint ea8f4f2e7ae06c5b INFO client_base.py:120 Connection closed to .. raw:: html
.. _ip_45_24_186_196_x_a-net_online_2323: x.a-net.online:2323 ------------------- **Connection Banner:** .. image:: /_static/banners/banner_47987b85abd4.png :alt: Synchronet BBS for Linux Version 3.21 Telnet connection from: 143.198.61.53 _ _ Synchronet BBS for Linux Version 3.21 Copyright 2025 Rob Swindell  !ERROR[x172] checking /sbbs/text/answer.msg The sysop has been notified. [Hit a key]              NN: Enter User Name or 'New' Login: E  :class: ansi-banner :width: 585px :loading: lazy Server URLs ~~~~~~~~~~~ .. raw:: html **Server Location**: 🇺🇸 United States (GeoIP) 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": "\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\b \b\r\n\r\nNN: \rEnter User Name or 'New'\r\nLogin: E\b \b", "banner_before_return": "\r\nSynchronet BBS for Linux Version 3.21\r\nTelnet connection from: 143.198.61.53\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\u0007\r\n!ERROR[x172] checking /sbbs/text/answer.msg\r\n\r\nThe sysop has been notified.\r\n[Hit a key] ", "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.5044827461242676, "total": 15.753868818283081 } } }, "sessions": [ { "connected": "2026-03-07T04:11:52.134288+00:00", "host": "x.a-net.online", "ip": "45.24.186.196", "port": 2323 }, { "connected": "2026-04-05T18:39:17.490723+00:00", "host": "x.a-net.online", "ip": "45.24.186.196", "port": 2323 }, { "connected": "2026-04-07T05:34:22.174964+00:00", "host": "x.a-net.online", "ip": "45.24.186.196", "port": 2323 } ] } .. 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.a-net.online 2323 .. raw:: html
Show Logfile .. code-block:: text DEBUG client.py:1200 Fingerprint client: host=x.a-net.online port=2323 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 + 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 + MXP] = True DEBUG stream_writer.py:1024 send IAC WILL MXP 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 + MSDP] = True DEBUG stream_writer.py:1024 send IAC WILL MSDP 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 + 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[DO + MCCP3_COMPRESS] = True DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS 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 + MXP] = True DEBUG stream_writer.py:1024 send IAC DO 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 + MSDP] = True DEBUG stream_writer.py:1024 send IAC DO MSDP 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 + 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: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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 client_base.py:510 MCCP3 compression started (client→server) DEBUG stream_writer.py:773 recv IAC DONT SNDLOC DEBUG stream_writer.py:2010 handle_dont(SNDLOC) DEBUG stream_writer.py:3384 pending_option[WILL + SNDLOC] = False DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = False DEBUG stream_writer.py:2404 recv TTYPE SEND: b'' DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE DEBUG 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:307 DSR detected early in data_received, sending CPR DEBUG client_base.py:307 DSR detected early in data_received, sending CPR DEBUG client_base.py:534 negotiation failed after 4.00s. DEBUG client_base.py:540 failed-reply: 'SB NEW_ENVIRON' 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 .. raw:: html