perlbbs.tw:23 ============= **Connection Banner:** .. raw:: html .. raw:: html

perlbbs.tw:23

Encoding -------- - **Effective encoding**: big5 - **Override**: big5 (from bbslist.txt) - **Scanner detected**: big5 Telnet Fingerprint ------------------ :ref:`8a99d1cde5b01013... ` *This fingerprint is unique to this server.* **Options offered by server**: ``BINARY``, ``ECHO``, ``SGA`` **Options requested from client**: ``BINARY``, ``GMCP``, ``MSP``, ``MSSP``, ``NAWS``, ``TTYPE`` **Data source**: `8a99d1cde5b01013/8e02f5e6aeb42ae5.json `_ The complete JSON record collected during the scan, including Telnet negotiation results and banner data. .. code-block:: json { "server-probe": { "fingerprint": "8a99d1cde5b01013", "fingerprint-data": { "offered-options": [ "BINARY", "ECHO", "SGA" ], "probed-protocol": "server", "refused-options": [ "AARDWOLF", "ATCP", "CHARSET", "COM_PORT", "EOR", "GMCP", "MSDP", "MSP", "MSSP", "MXP", "STATUS", "ZMP" ], "requested-options": [ "BINARY", "GMCP", "MSP", "MSSP", "NAWS", "TTYPE" ], "scan-type": "quick" }, "session_data": { "banner_after_return": "\u001b[K\n\r\u001b[24;1H\u001b[37;45;1m \u25c6 \u9019\u88e1\u6c92\u6709\u9019\u500b\u4eba\u5566\uff01 \u001b[33m \u3010\u8acb\u6309\u4efb\u610f\u9375\u7e7c\u7e8c\u3011\u001b[m", "banner_before_return": "\u001b[;H\u001b[2J\u001b[1;32m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u25e3 \u001b[31m\u2588\u2588\u2588\u2588 \u001b[33m\u2588\u2588\u001b[43m\u25e4\u001b[;33m\u2588\u001b[1;31m\u2588\u2588\u2588\u001b[m\n\r\u001b[1;32m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u25e3 \u001b[31m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[;33m\u2588\u2588\u2588\u2588\u001b[1;31m\u2588\u2588\u2588\u001b[m\n\r\u001b[1;32m\u2588\u2588\u2588\u2588\u2588\u2588\u001b[;36m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[44m\u25e3 \u001b[35;45m \u001b[1;31;40m\u2588\u2588\u2588\u2588\u001b[;33m\u2588\u2588\u2588\u2588\u001b[1;31m\u2588\u2588\u25e4\u001b[m\n\r\u001b[1;32m\u2588\u2588\u2588\u2588\u2588\u2588\u001b[;36;44m\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 \u001b[35;45m \u001b[1;31;40m\u2588\u2588\u2588\u2588\u001b[;33m\u2588\u2588\u2588\u2588\u001b[1;31m\u2588\u25e4 \u001b[33m\u2588\u2588\u001b[m\n\r\u001b[1;32m \u2588\u2588\u2588\u2588 \u001b[;36;44m \u25e5\u2588\u2588\u2588\u2588 \u001b[35;45m \u001b[1;31;40m\u2588\u2588\u2588\u001b[;33m\u2588\u2588\u2588\u2588\u2588\u001b[1;33;43m\u25e2\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[m\n\r\u001b[1;32m \u2588\u2588\u2588\u2588 \u001b[;36;44m \u2588\u2588\u2588\u2588 \u001b[35;45m \u001b[1;31;40m\u2588\u25e5\u2588\u001b[;33m\u2588\u2588\u2588\u001b[1;33;43m\u25e5\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[m\n\r\u001b[1;32m \u2588\u2588\u2588\u2588 \u001b[;34;44m \u001b[m \u001b[1;32m\u2588\u2588\u2588\u2588 \u001b[31m\u2588\u2588\u2588\u2588 \u25e5\u001b[;33m\u2588\u2588\u2588\u2588\u001b[1;33;43m\u25e5\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[m\n\r\u001b[1;32m \u2588\u2588\u2588\u2588 \u001b[;34;44m \u001b[m \u001b[1;32m\u2588\u2588\u2588\u2588 \u001b[31m\u2588\u2588\u2588\u2588 \u001b[33;43m\u25e3\u001b[;33;43m\u2588\u2588\u2588\u2588\u001b[1;33m\u25e5\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u001b[m\n\r\u001b[1;32m \u2588\u2588\u2588\u2588 \u001b[;34;44m \u001b[m \u001b[1;32m\u2588\u2588\u2588\u2588 \u001b[31m\u2588\u2588\u2588\u2588 \u25e5\u2588\u2588\u2588\u2588\u25e3\u001b[m\n\r\u001b[1;32m \u2588\u2588\u2588\u2588 \u001b[;36;44m \ufffd\u001b[1;32;40m\u828di\u2588\u2588\u25e4 \u001b[31m\u2588\u2588\u2588\u2588 \u25e5\u2588\u2588\u2588\u2588\u25e3 \u001b[36m \u851a\u85cd\u6d77\u5cb8\u001b[m\n\r\u001b[1;32m \u2588\u2588\u2588\u2588\u2588\ufffd\u001b[;36;44mi\u001b[46m \ufffd\u001b[44mi\u2588\u2588\u2588\u2588\u2588\u25e4 \u001b[35;40m\u2588\u2588\ufffd\u001b[1;31mi\u2588\u2588 \u25e5\u2588\u2588\u2588\u2588\u2588\u001b[37mperlbbs.tw\u001b[m\u001b[14;1H\u001b[1;32m\u6b61\u8fce\u5149\u81e8\u001b[0m\u001b[1;33m \u2606\u001b[0m \u001b[1;36m\u851a\u85cd\u6d77\u5cb8\u001b[0m \u001b[1;33m\u2606\u001b[0m [\u7ad9\u5167\u6709 0 \u4eba] [\u4e0a\u9650 1024] (\u7cfb\u7d71\u8ca0\u8f09 0.52 0.45 0.42)\u001b[16;1H\u7ad9\u9577\u66f0\uff1a\u5982\u679c\u60a8\u9084\u4e0d\u80fdpost\uff0c\u8acb\u586b\u5beb\u8a3b\u518a\u55ae(User\u9078\u9805\u7684Register)\u3002\u4e0d\u5fc5\u7b49\u4e09\u5929\u54e6!!\n\r\u001b[1;34m\u5929\u7a7a\u98db\u4f86\u65b0\u7684\u4fe1\u606f\uff1a \u001b[1;37m\u60a8\u53ef\u66fe\u77e5\u9053\uff1f\u001b[40;0m\n\r \u60f3\u77e5\u9053 Board \u4e0a\u662f\u5426\u6709 \u001b[1;36m\u65b0\u9032\u7684\u6587\u7ae0\u001b[0m\n\r\u001b[0m \u53ea\u9808\u7528 \u001b[1;31mc\u001b[0m \u9375\u5c31\u53ef\u4ee5\u56c9\uff01\u001b[21;1H\u8acb\u8f38\u5165\u4ee3\u865f\uff0c\u6216\u4ee5[guest]\u53c3\u89c0\uff0c\u4ee5[new]\u8a3b\u518a\uff1a\u001b[7m \u001b[m\u001b[21;43H", "encoding": "big5", "option_states": { "server_offered": { "BINARY": true, "ECHO": true, "SGA": true }, "server_requested": { "BINARY": true, "NAWS": true, "TTYPE": true } }, "scan_type": "quick", "timing": { "probe": 0.5059587955474854, "total": 5.533006191253662 } } }, "sessions": [ { "connected": "2026-02-09T19:33:02.919548+00:00", "host": "perlbbs.tw", "ip": "114.35.225.208", "port": 23 } ] } Connection Log -------------- Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server. .. code-block:: text DEBUG client.py:863 Fingerprint client: host=perlbbs.tw port=23 INFO client_base.py:174 Connected to DEBUG stream_writer.py:706 recv IAC DO TTYPE DEBUG stream_writer.py:1767 handle_do(TTYPE) DEBUG stream_writer.py:3167 pending_option[WILL + TTYPE] = True DEBUG stream_writer.py:947 send IAC WILL TTYPE DEBUG stream_writer.py:3167 pending_option[SB + TTYPE] = True DEBUG stream_writer.py:3167 local_option[TTYPE] = True DEBUG stream_writer.py:3167 pending_option[WILL + TTYPE] = False DEBUG stream_writer.py:698 begin sub-negotiation SB TTYPE DEBUG stream_writer.py:685 sub-negotiation cmd TTYPE SE completion byte DEBUG stream_writer.py:3167 pending_option[SB + TTYPE] = False DEBUG stream_writer.py:2234 recv TTYPE SEND: b'' DEBUG stream_writer.py:2247 send IAC SB TTYPE IS b'xterm-256color' IAC SE DEBUG stream_writer.py:706 recv IAC DO NAWS DEBUG stream_writer.py:1767 handle_do(NAWS) DEBUG stream_writer.py:3167 pending_option[WILL + NAWS] = True DEBUG stream_writer.py:947 send IAC WILL NAWS DEBUG stream_writer.py:2339 send IAC SB NAWS (rows=25, cols=80) IAC SE DEBUG stream_writer.py:3167 local_option[NAWS] = True DEBUG stream_writer.py:3167 pending_option[WILL + NAWS] = False DEBUG stream_writer.py:706 recv IAC WILL ECHO DEBUG stream_writer.py:722 WILL ECHO unsolicited DEBUG stream_writer.py:1897 handle_will(ECHO) DEBUG stream_writer.py:3167 pending_option[DO + ECHO] = True DEBUG stream_writer.py:947 send IAC DO ECHO DEBUG stream_writer.py:3167 remote_option[ECHO] = True DEBUG stream_writer.py:3167 pending_option[DO + ECHO] = False DEBUG stream_writer.py:706 recv IAC WILL SGA DEBUG stream_writer.py:722 WILL SGA unsolicited DEBUG stream_writer.py:1897 handle_will(SGA) DEBUG stream_writer.py:3167 pending_option[DO + SGA] = True DEBUG stream_writer.py:947 send IAC DO SGA DEBUG stream_writer.py:3167 remote_option[SGA] = True DEBUG stream_writer.py:3167 pending_option[DO + SGA] = False DEBUG stream_writer.py:706 recv IAC WILL BINARY DEBUG stream_writer.py:722 WILL BINARY unsolicited DEBUG stream_writer.py:1897 handle_will(BINARY) DEBUG stream_writer.py:3167 pending_option[DO + BINARY] = True DEBUG stream_writer.py:947 send IAC DO BINARY DEBUG stream_writer.py:3167 remote_option[BINARY] = True DEBUG stream_writer.py:3167 pending_option[DO + BINARY] = False DEBUG client_base.py:460 negotiation complete after 2.00s. DEBUG stream_writer.py:706 recv IAC DO BINARY DEBUG stream_writer.py:1767 handle_do(BINARY) DEBUG stream_writer.py:3167 pending_option[WILL + BINARY] = True DEBUG stream_writer.py:947 send IAC WILL BINARY DEBUG stream_writer.py:3167 local_option[BINARY] = True DEBUG stream_writer.py:3167 pending_option[WILL + BINARY] = False DEBUG stream_writer.py:3167 pending_option[DO + STATUS] = True DEBUG stream_writer.py:947 send IAC DO STATUS DEBUG stream_writer.py:3167 pending_option[DO + CHARSET] = True DEBUG stream_writer.py:947 send IAC DO CHARSET DEBUG stream_writer.py:3167 pending_option[DO + EOR] = True DEBUG stream_writer.py:947 send IAC DO EOR DEBUG stream_writer.py:3167 pending_option[DO + COM_PORT_OPTION] = True DEBUG stream_writer.py:947 send IAC DO COM_PORT_OPTION DEBUG stream_writer.py:3167 pending_option[DO + GMCP] = True DEBUG stream_writer.py:947 send IAC DO GMCP DEBUG stream_writer.py:3167 pending_option[DO + MSDP] = True DEBUG stream_writer.py:947 send IAC DO MSDP DEBUG stream_writer.py:3167 pending_option[DO + MSSP] = True DEBUG stream_writer.py:947 send IAC DO MSSP DEBUG stream_writer.py:3167 pending_option[DO + MSP] = True DEBUG stream_writer.py:947 send IAC DO MSP DEBUG stream_writer.py:3167 pending_option[DO + MXP] = True DEBUG stream_writer.py:947 send IAC DO MXP DEBUG stream_writer.py:3167 pending_option[DO + ZMP] = True DEBUG stream_writer.py:947 send IAC DO ZMP DEBUG stream_writer.py:3167 pending_option[DO + AARDWOLF] = True DEBUG stream_writer.py:947 send IAC DO AARDWOLF DEBUG stream_writer.py:3167 pending_option[DO + ATCP] = True DEBUG stream_writer.py:947 send IAC DO ATCP DEBUG stream_writer.py:706 recv IAC DO COM_PORT_OPTION DEBUG stream_writer.py:1767 handle_do(COM_PORT_OPTION) DEBUG stream_writer.py:1845 DO COM_PORT_OPTION not supported. DEBUG stream_writer.py:3167 local_option[COM_PORT_OPTION] = False DEBUG stream_writer.py:947 send IAC WONT COM_PORT_OPTION DEBUG stream_writer.py:706 recv IAC DO GMCP DEBUG stream_writer.py:1767 handle_do(GMCP) DEBUG stream_writer.py:3167 pending_option[WILL + GMCP] = True DEBUG stream_writer.py:947 send IAC WILL GMCP DEBUG stream_writer.py:3167 local_option[GMCP] = True DEBUG stream_writer.py:3167 pending_option[WILL + GMCP] = False DEBUG stream_writer.py:706 recv IAC DO MSSP DEBUG stream_writer.py:1767 handle_do(MSSP) DEBUG stream_writer.py:3167 pending_option[WILL + MSSP] = True DEBUG stream_writer.py:947 send IAC WILL MSSP DEBUG stream_writer.py:3167 local_option[MSSP] = True DEBUG stream_writer.py:3167 pending_option[WILL + MSSP] = False DEBUG stream_writer.py:706 recv IAC DO MSP DEBUG stream_writer.py:1767 handle_do(MSP) DEBUG stream_writer.py:3167 pending_option[WILL + MSP] = True DEBUG stream_writer.py:947 send IAC WILL MSP DEBUG stream_writer.py:3167 local_option[MSP] = True DEBUG stream_writer.py:3167 pending_option[WILL + MSP] = False INFO fingerprinting.py:737 new server fingerprint 8a99d1cde5b01013 INFO client_base.py:105 Connection closed to *Generated by* `telnetlib3-fingerprint `_ .. code-block:: shell telnetlib3-fingerprint --loglevel=debug perlbbs.tw 23