66.228.38.196 (ansalon.net)
ansalon.net:2001
Connection Banner:
Server URLs
- Telnet: telnet://ansalon.net:2001
Server Info
Server Location: 🇺🇸 United States (GeoIP)
Telnet Fingerprint
This fingerprint is shared by 111 other servers.
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "c2dd7d4e76383b41",
"fingerprint-data": {
"offered-options": [],
"probed-protocol": "server",
"refused-options": [],
"requested-options": [],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "If you don't see the word '\u001b[31mCOLOR\u001b[0m' in red, choose N.\n\rDo you see \u001b[31mCOLOR\u001b[0m? (Y/N): \n\r \u001b[0;37m,/\u001b[0m ROM 2.4 beta-based MUD \u001b[0;37m\\, \n\r \u001b[0;35m _________\u001b[0;37m{(\u001b[0m brought to you by: \u001b[0;37m)}\u001b[0;35m_________ \u001b[0m Rom 2.4 beta (c)\u001b[0m\n\r \u001b[0;35m /.-------./\\\\ //\\.-------.\\\u001b[0m 1993-1996\u001b[0m\n\r \u001b[0;35m//\u001b[0;31m@@@@@@@\u001b[0;35m//\u001b[0;31m@@\u001b[0;35m\\\\ \u001b[0;37m)\u001b[0m Deason and \u001b[0;37m( \u001b[0;35m//\u001b[0;31m@@\u001b[0;35m\\\\\u001b[0;31m@@@@@@@\u001b[0;35m\\\\\u001b[0m Russ Taylor\n\r \u001b[0;35m//\u001b[0;31m@@@@@@@\u001b[0;35m//\u001b[0;31m@@@@\u001b[0;35m>>\u001b[0;37m/\u001b[0m Jair \u001b[0;37m\\\u001b[0;35m<<\u001b[0;31m@@@@\u001b[0;35m\\\\\u001b[0;31m@@@@@@@\u001b[0;35m\\\\\u001b[0m\n\r \u001b[0;35m//\u001b[1;31mO\u001b[0;31m@\u001b[1;31mO\u001b[0;31m@\u001b[1;31mO\u001b[0;31m@\u001b[1;31mO\u001b[0;35m//\u001b[0;31m@\u001b[1;31mO\u001b[0;31m@\u001b[1;31mO\u001b[0;35m//\u001b[0m \u001b[0;35m\\\\\u001b[1;31mO\u001b[0;31m@\u001b[1;31mO\u001b[0;31m@\u001b[0;35m\\\\\u001b[1;31mO\u001b[0;31m@\u001b[1;31mO\u001b[0;31m@\u001b[1;31mO\u001b[0;31m@\u001b[1;31mO\u001b[0;35m\\\\\u001b[0m\n\r \u001b[0;35m//\u001b[1;31mOOOOOOOO\u001b[0;35m//\u001b[1;31mOOOO\u001b[0;35m|| \u001b[0;37m\\ / \u001b[0;35m||\u001b[1;31mOOOO\u001b[0;35m\\\\\u001b[1;31mOOOOOOOO\u001b[0;35m\\\\\u001b[0m\n\r \u001b[0;35m//\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[0;35m//\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[0;35m\\\\ \u001b[0;37m))(( \u001b[0;35m//\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;35m\\\\\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;33m%\u001b[1;31mO\u001b[0;35m\\\\\u001b[0m\n\r \u001b[0;35m||\u001b[0;33m%%%%%%%%\u001b[0;35m//\u001b[0;37m' `\u001b[0;33m%%%%\u001b[0;35m\\\\ \u001b[0;37m// \\\\ \u001b[0;35m//\u001b[0;33m%%%%\u001b[0;37m' `\u001b[0;35m\\\\\u001b[0;33m%%%%%%%%\u001b[0;35m||\u001b[0m\n\r \u001b[0;35m((\u001b[0;33m%%%%%%%\u001b[0;35m(( \u001b[0;33m%%%%%\u001b[0;35m\\\\ \u001b[0;37m(( )) \u001b[0;35m//\u001b[0;33m%%%%% \u001b[0;35m))\u001b[0;33m%%%%%%%\u001b[0;35m))\u001b[0m\n\r \u001b[0;35m\\\u001b[1;33m:::\u001b[0;37m' `\u001b[1;33m::\u001b[0;35m\\\\ `\u001b[1;33m:::::\u001b[0;35m\\\\ \u001b[0;37m\\\u001b[0;35m)^^(\u001b[0;37m/ \u001b[0;35m//\u001b[1;33m:::::\u001b[0;37m' \u001b[0;35m//\u001b[1;33m::\u001b[0;37m' `\u001b[1;33m:::\u001b[0;35m/\u001b[0m\n\r \u001b[0;37m)' \u001b[0;37m`\u001b[1;33m;\u001b[0;37m)' (' ` \u001b[0;35m\\\\ \u001b[0;37m`\u001b[0;35m<\u001b[1;34m@ @\u001b[0;35m>\u001b[0;37m' \u001b[0;35m/ / \u001b[0;37m' ') `(\u001b[1;33m;\u001b[0;37m' \u001b[0;35m__ \u001b[0;37m`(\u001b[0m\n\r \u001b[0;37m( \u001b[0;35m\\`\\ )/\\( / / \u001b[0;37m) \u001b[0;35m/ \\\u001b[0m\n\r \u001b[0;32m___________________\u001b[0;35m)\u001b[0;32m_\u001b[0;35m\\\\\u001b[1;35moo\u001b[0;35m/\u001b[0;32m___\u001b[0;35m(\u001b[0;32m______\u001b[0;35moOo\u001b[0;32m________\u001b[0;35m/\u001b[0;32m_\u001b[0;35m/` '\u001b[0;32m___/|\u001b[0m \n\r \u001b[0;32m/ \u001b[0;35m^^ \u001b[1;33mVVV \u001b[0;35m'| \u001b[0;32m|\u001b[0m\n\r \u001b[0;32m| \u001b[0m Welcome to Ansalon! \u001b[0;37m` \u001b[0;32m|\u001b[0m\n\r \u001b[0;32m| ________________________________________________________/\u001b[0m\n\r \u001b[0;32m|/ \u001b[0;35m/ ,/ \\\u001b[1;35m______\u001b[0;35m/ \\\\ ^\\/^ /'/\u001b[0m \n\r \u001b[0;35m___//^ \\\u001b[1;35m_____\u001b[0;35m/\\\\ /'/\u001b[0m Original DikuMUD by\n\rBased on MERC 2.1 by \u001b[1;33m<<<_\u001b[0;35m`\\ \u001b[0;35m<\u001b[1;35m____\u001b[0;35m/\\\\ /''>\u001b[0m Hans Staerfeldt, Katja\n\rHatchet, Furey, & Kahn \u001b[1;33m' \u001b[0;35m<\u001b[1;35m____\u001b[0;35m/`- ' \u001b[1;35m_\u001b[0;35m>\u001b[0m Nyboe, Tom Madsen\n\r \u001b[0;35m<\u001b[1;35m____\u001b[0;35m/\u001b[1;35m__\u001b[0;35m>\u001b[0m Michael Seifert, and\n\r \u001b[0;35m`---'\u001b[0m Sebastian Hammer\n\rBy what name art thou known? ",
"banner_before_return": "\n\rDo you see \u001b[31mCOLOR\u001b[0m? (Y/N): ",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"option_states": {
"server_offered": {},
"server_requested": {}
},
"scan_type": "quick",
"timing": {
"probe": 0.0,
"total": 16.16084861755371
}
}
},
"sessions": [
{
"connected": "2026-04-05T18:56:32.945874+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 2001
},
{
"connected": "2026-04-07T07:16:13.290363+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 2001
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug ansalon.net 2001
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=ansalon.net port=2001
INFO client_base.py:190 Connected to <Peer 66.228.38.196 2001>
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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[WILL + 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 + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + 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[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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + 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 + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + 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 client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'WILL GMCP, WILL MXP, WILL ZMP, WILL MSP, WILL ATCP, WILL MSSP, WILL MCCP3_COMPRESS, WILL
MCCP2_COMPRESS, WILL AARDWOLF, WILL MSDP, DO GMCP, DO MXP, DO ZMP, DO MSP, DO ATCP, DO MSSP, DO MCCP3_COMPRESS, DO
MCCP2_COMPRESS, DO AARDWOLF, DO MSDP'
DEBUG client_base.py:93 EOF from server, closing.
INFO client_base.py:122 Connection closed to <Peer 66.228.38.196 2001>
DEBUG fingerprinting.py:849 connection for server fingerprint c2dd7d4e76383b41
ansalon.net:6942
Connection Banner:
Server URLs
- Telnet: telnet://ansalon.net:6942
Server Info
Server Location: 🇺🇸 United States (GeoIP)
Telnet Fingerprint
This fingerprint is shared by 111 other servers.
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "c2dd7d4e76383b41",
"fingerprint-data": {
"offered-options": [],
"probed-protocol": "server",
"refused-options": [],
"requested-options": [],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "A man in a dark grey overcoat approaches you...\n\r\n\rHe whispers to you '\u001b[0;33mHey, Do you want to play in color?\u001b[0m'\n\r'\u001b[0;33mJust yes or no will do\u001b[0m' he continues.\n\rThe man looks pleased and says '\u001b[0;32mThat's good, my eyes aren't what they used to be.\u001b[0m'\n\rHe looks around with a wary eye and pulls out an ID card...\n\r____________________________________________________________________________________\n\r|o| \u001b[0;34m___________ ___\u001b[0;31m|\u001b[0;34m___ _______ \u001b[0m |o|\n\r|o| \u001b[0;34m| | / \u001b[0;31m|\u001b[0;34m \\ / \\ \u001b[0m |o|\n\r|o| \u001b[0;34m|__ __|| \u001b[0;31m/--+--\\\u001b[0;34m || _ \\\u001b[0m |o|\n\r|o| \u001b[0;34m | | \u001b[0;31m// \u001b[0;34m|\u001b[0;31m|\u001b[0;34m\\ \u001b[0;31m\\\\\u001b[0;34m| | \\ |\u001b[0m |o|\n\r|o| \u001b[0;34m | | \u001b[0;31m|| \u001b[0;34m|\u001b[0;31m|\u001b[0;34m| \u001b[0;31m||\u001b[0;34m | | |\u001b[0m |o|\n\r|o| \u001b[0;34m | \u001b[0;31m----+-----+-----+----\u001b[0;34m_/ |\u001b[0m |o|\n\r|o| \u001b[0;34m | | \u001b[0;31m|| \u001b[0;34m|\u001b[0;31m|\u001b[0;34m| \u001b[0;31m||\u001b[0;34m ___.-'\u001b[0m |o|\n\r|o| \u001b[0;34m | | \u001b[0;31m\\\\ \u001b[0;34m|\u001b[0;31m|\u001b[0;34m| \u001b[0;31m//\u001b[0;34m| |\u001b[0m |o|\n\r|o| \u001b[0;34m | | | \u001b[0;31m\\--+--/\u001b[0;34m |\u001b[0;34m| |\u001b[0m |o|\n\r|o| _ __)\\______\u001b[0;34m|___|\u001b[0m___\u001b[0;34m`-.__\u001b[0;31m|\u001b[0;34m__.-'\u001b[0;34m|___|\u001b[0m________/7_ |o|\n\r|o| (// ))))) \u001b[0;31m|\u001b[0m `\\|| |o|\n\r|o| / ((((( )` |o|\n\r|o| (_____________________________________________// \u001b[1;30m/*\\\u001b[0m |o|\n\r|o| \\ ________ ________________\u001b[0;34m_____\u001b[0m__\u001b[0;34m_____\u001b[0m___//\u001b[0;34m__ __\u001b[1;30m\\*/\u001b[0;34m _____ ______\u001b[0m |o|\n\r|o| ) /#######/ )\\ / )/ \u001b[0;34m/ \\ | \u001b[1;30m/*\\\u001b[0;34m/ \\ / \\ | || |\u001b[0m|o|\n\r|o| / /##(\\)##/ / \\( // \u001b[0;34m| || _\u001b[1;30m\\*/\u001b[0;34m| _ || _ || ___||__ __|\u001b[0m|o|\n\r|o| / /#######( (\\______._/` \u001b[0;34m| |\\__|| | | | | || | \\ || | | | \u001b[0m |o|\n\r|o| / /#########) )------`` \u001b[0;34m| \u001b[1;30m/*\\\u001b[0;34m_ | |_ | | |_/ | | | / | |_ | | \u001b[0m |o|\n\r|o| / /#########/ / \u001b[0;34m`_\u001b[1;30m\\*/\u001b[0;34m `.| _| | | __ | |< \\ | _| | | \u001b[0m |o|\n\r|o| / /###(/)###/ / \u001b[0;34m./'|. || | | | | || | | || | | | \u001b[0m |o|\n\r|o|( (#########/ ( \u001b[1;30m/*\\\u001b[0;34m \u001b[0;34m| || || | | | | || | | || | | | \u001b[0m |o|\n\r|o| \\____/_______\\) \u001b[1;30m\\*/\u001b[0;34m \u001b[0;34m| \\| || |___ | |_| || | | || |___ | | \u001b[0m |o|\n\r|o| \u001b[0;34m \\____/ |_____|`-_____-'|_| |__||_____| |_| \u001b[0m |o|\n\r|o| \u001b[1;31mTOP SECRET\u001b[0m MUD, 2003 - \u001b[0;34mA MODERN GAME OF ESPIONAGE AND DECEPTION\u001b[0m -- |o|\n\r|o| ____________________________________________________________________________ |o|\n\r|o| Sequencing: TopSecret1.0 <-- Rom 2.4b6 <-- Merc 2.1 <-- DikuMUD |o|\n\r|o| Top Secret is ROM Version 2.4 with modifications. DikuMUD by Hans Staerfeldt,|o|\n\r|o| Katja Nyboe, Tom Madsen, Michael Seifert, and Sebastian Hammer MERC 2.1 |o|\n\r|o| code by Hatchet, Furey, and Kahn. ROM 2.4 copyright (c) 1993-1998 Russ Taylor|o|\n\r------------------------------------------------------------------------------------\n\r\n\rMessage from Control:\n\r This MUD is brand spankin new, so please be patient as the cleaners erase all\n\r evidence of any 'fantasy' element, and the Control creates the new existance.\n\r\n\rThe man looks around warily.\n\rThen he continues '\u001b[0;32mSo what is your name Agent?\u001b[0m'",
"banner_before_return": "\n\rA man in a dark grey overcoat approaches you...\n\r\n\rHe whispers to you '\u001b[0;32mHey, Do you want to play in color?\u001b[0m'\n\r'\u001b[0;32mJust yes or no will do\u001b[0m' he continues.\n\r",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"option_states": {
"server_offered": {},
"server_requested": {}
},
"scan_type": "quick",
"timing": {
"probe": 0.0,
"total": 16.297636032104492
}
}
},
"sessions": [
{
"connected": "2026-04-05T19:34:35.557588+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 6942
},
{
"connected": "2026-04-07T06:56:52.688391+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 6942
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug ansalon.net 6942
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=ansalon.net port=6942
INFO client_base.py:190 Connected to <Peer 66.228.38.196 6942>
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 + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
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 + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
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 + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
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[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
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 + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
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 + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
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 + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
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:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'WILL GMCP, WILL ATCP, WILL ZMP, WILL AARDWOLF, WILL MSSP, WILL MSDP, WILL MXP, WILL
MCCP2_COMPRESS, WILL MCCP3_COMPRESS, WILL MSP, DO GMCP, DO ATCP, DO ZMP, DO AARDWOLF, DO MSSP, DO MSDP, DO MXP, DO
MCCP2_COMPRESS, DO MCCP3_COMPRESS, DO MSP'
DEBUG client_base.py:93 EOF from server, closing.
INFO client_base.py:122 Connection closed to <Peer 66.228.38.196 6942>
DEBUG fingerprinting.py:849 connection for server fingerprint c2dd7d4e76383b41
Ansalon MUD (ansalon.net:8650)
Connection Banner:
Server URLs
- Telnet: telnet://ansalon.net:8650
- Website: http://www.ansalon.net/
Server Info
Codebase: AnsalonMUD - 1.7b2 (Originally Rom 2.4 Actively Improved since 1996)
Genre: Fantasy
Gameplay: Adventure
Players online: 0 [1]
Uptime: 19 days
Created: 1996
Status: Live
Server Location: 🇺🇸 United States (MSSP)
Language: English
Protocol Support
MUD-specific protocols detected via MSSP flags or Telnet negotiation.
MSSP: Yes (MSSP)
GMCP: No
MSDP: Negotiated
MCCP: No
MCCP2: No
MXP: Negotiated
MSP: Yes (MSSP)
MCP: No
ZMP: No
Telnet Fingerprint
This fingerprint is shared by 57 other servers.
Options requested from client: ATCP, CHARSET, MXP, NAWS, TTYPE
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "2d1d3bcf28abae7b",
"fingerprint-data": {
"offered-options": [],
"probed-protocol": "server",
"refused-options": [],
"requested-options": [
"ATCP",
"CHARSET",
"MXP",
"NAWS",
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"atcp": [
{
"package": "MSDP.SERVER_ID",
"value": "Ansalon MUD"
}
],
"banner_after_return": "",
"banner_before_return": "_________________________________________________________________\n\r/\\--__--__--__--__--__--__--__--__--__--__--__--__--__--__--__--_\\\n\r| ===== A N S A L O N M U D ===== |\n\r \\ --------------------- \\\n\r | |\n\r | Originally by: Jair, Deason and Ahotasu |\n\r / and currently by: Skol and Bharish, /\n\r | with a huge thanks to Malum, Renli and Demilon |\n\r| _________(( ))__________ |\n\r| /.-------./\\\\ //\\.------.\\ |\n\r/ //@@@@@@@//@@\\\\ ) ( //@@\\\\@@@@@@@\\\\ /\n\r| //@@@@@@@//@@@@>>/ \\<<@@@@\\\\@@@@@@@\\\\ |\n\r\\ //O@O@O@O//@O@O// \\\\O@O@\\\\O@O@O@O\\\\ |\n\r///OOOOOOOO//OOOO|| \\ / ||OOOO\\\\OOOOOOOO\\\\ |\n\r///O%O%O%O%//O%O%O%\\\\ ))(( //%O%O%O\\\\%O%O%O%O\\\\ |\n\r||%%%%%%%%//' `%%%%\\\\ // \\\\ //%%%%' `\\\\%%%%%%%%|||\n\r((%%%%%%%(( %%%%%\\\\ (( )) //%%%%% ))%%%%%%%))\\\n\r|\\:::' `::\\\\ `:::::\\\\ \\)^^(/ //:::::' //::' `:::/ |\n\r{x \\ )' `)' (' ` \\\\ `<@ @>' // ' ') `(' __ `( |\n\r| ( \\`\\ )/\\( / / ) / \\ |\n\r/ ______________)_\\_\\oo/__(______oOo________/_/` '\\| /\n\r| / ^^ VVV '|/| |\n\r| | Welcome to Ansalon! ` | |\n\r| | ________________________________________________/ |\n\r| |/ / ,/ \\______/ \\\\ ^\\/^ /'/ |\n\r\\ ___//^ \\_____/\\\\ /'/ \\\n\r| <<<_`\\ <____/\\\\ /''> |\n\r| Learn MORE! ' <____/`- ' _> |\n\r| http://www.Ansalon.net <____/__> |\n\r\\ `---' \\\n\r \\ Credits: (read: where we're from and all that) \\\n\r | |\n\r | History: Crowther & Woods \"Colossal Cave\" Adventure --> |\n\r / MUD1 (Trubshaw & Bartle, 1978) inspired AberMUD (Alan Cox), |\n\r | CopperMUD (Michael Chadwick), and DikuMUD (DIKU team, 1991) |\n\r \\ --> Merc 2.1 --> ROM 2.4b2 --> Ansalon 1.7b \\\n\r | |\n\r | AnsalonMUD is derived from ROM with decades of evolution. |\n\r / Ansalon began as AlphaMUD in 1996, renamed Ansalon in 1997 /\n\r | |\n\r | DikuMUD by Hans Staerfeldt, Katja Nyboe, Tom Madsen, |\n\r | Michael Seifert, and Sebastian Hammer |\n\r / MERC 2.1 code by Hatchet, Furey, and Kahn. /\n\r | ROM 2.4 copyright (c) 1993-1998 Russ Taylor |\n\r| Ansalon 1.7b (c) 1996-2026 David Leverich & John Patrick |\n\r | |\n\r / /| /| |\\ /\n\r \\_/ \\_-/\\_-/\\_-/ \\-/\\_-__-_/\\/\\_-/ \\-/\\_-__\\\\_-/ \\-/\\-/ \\-_\\_\\\n\r\n\r By what name art thou known?\n\r\u001b[7z",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"mssp": {
"ADULT MATERIAL": [
"1",
"0"
],
"ANSI": "1",
"AREAS": "191",
"CLASSES": "11",
"CODEBASE": "AnsalonMUD - 1.7b2 (Originally Rom 2.4 Actively Improved since 1996)",
"CONTACT": "info@ansalon.net",
"CRAWL DELAY": "-1",
"CREATED": "1996",
"DBSIZE": "0",
"EQUIPMENT SYSTEM": "",
"EXITS": "44076",
"EXTRA DESCRIPTIONS": "6862",
"FAMILY": "DikuMUD",
"GAMEPLAY": "Adventure",
"GENRE": "Fantasy",
"GMCP": "0",
"HELPFILES": "942",
"HOSTNAME": "ansalon.net",
"ICON": "http://www.ansalon.net/ansalonMSSP.png",
"IP": "66.228.38.196",
"LANGUAGE": "English",
"LEVELS": "101",
"LOCATION": "United States",
"MCCP": "0",
"MCP": "0",
"MINIMUM AGE": "0",
"MOBILES": "5688",
"MSDP": [
"1",
"1",
"1"
],
"MSP": "1",
"MUDPROGS": "14234",
"MUDTRIGS": "0",
"MULTICLASSING": "0",
"MULTIPLAYING": [
"No",
""
],
"MXP": [
"1",
"1"
],
"NAME": "Ansalon MUD",
"NEWBIE FRIENDLY": [
"1",
"1"
],
"OBJECTS": "7812",
"PLAYER CITIES": "0",
"PLAYER CLANS": [
"1",
"1"
],
"PLAYER CRAFTING": "1",
"PLAYER GUILDS": "1",
"PLAYERKILLING": [
"Yes (With a NOPK option)",
"1"
],
"PLAYERS": "0",
"PORT": "8679",
"PUEBLO": "0",
"QUEST SYSTEM": [
"Automated, Immortal and MOBPROG",
"1"
],
"RACES": "19",
"RESETS": "19346",
"ROLEPLAYING": [
"Highly Encouraged",
"1"
],
"ROOMS": "19238",
"STATUS": "Live",
"SUBGENRE": "Dragonlance",
"TRAINING SYSTEM": "1",
"UPTIME": "1773877012",
"UTF-8": [
"1",
"1"
],
"VT100": "0",
"WEBSITE": "http://www.ansalon.net/",
"WORLD ORIGINALITY": [
"All Original",
"1"
],
"XTERM 256 COLORS": [
"1",
"1"
]
},
"mxp": [
"activated"
],
"option_states": {
"server_offered": {
"AARDWOLF": false,
"ATCP": false,
"GMCP": false,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"ZMP": false
},
"server_requested": {
"AARDWOLF": false,
"ATCP": true,
"CHARSET": true,
"GMCP": false,
"MCCP2": false,
"MCCP3": false,
"MSDP": false,
"MSP": false,
"MSSP": false,
"MXP": true,
"NAWS": true,
"TTYPE": true,
"ZMP": false
}
},
"scan_type": "quick",
"timing": {
"probe": 0.0,
"total": 5.733783960342407
}
}
},
"sessions": [
{
"connected": "2026-04-05T18:52:06.357913+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 8650
},
{
"connected": "2026-04-07T06:47:55.503077+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 8650
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug ansalon.net 8650
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=ansalon.net port=8650
INFO client_base.py:190 Connected to <Peer 66.228.38.196 8650>
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 + 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[WILL + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
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 + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
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 + 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:3384 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
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 + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
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 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:767 begin sub-negotiation SB ATCP
DEBUG stream_writer.py:754 sub-negotiation cmd ATCP SE completion byte
DEBUG stream_writer.py:2238 [SB + ATCP] unsolicited
DEBUG stream_writer.py:1820 ATCP: MSDP.SERVER_ID 'Ansalon MUD'
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 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 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:767 begin sub-negotiation SB MXP
DEBUG stream_writer.py:754 sub-negotiation cmd MXP SE completion byte
DEBUG stream_writer.py:2238 [SB + MXP] unsolicited
DEBUG stream_writer.py:1805 MXP: b''
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 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 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 MSDP
DEBUG stream_writer.py:2010 handle_dont(MSDP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:3384 local_option[MSDP] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DONT 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 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 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 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 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 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 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:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'NAME': 'Ansalon MUD', 'PLAYERS': '0', 'UPTIME': '1773877012', 'CRAWL DELAY': '-1', 'HOSTNAME':
'ansalon.net', 'PORT': '8679', 'CODEBASE': 'AnsalonMUD - 1.7b2 (Originally Rom 2.4 Actively Improved since 1996)', 'CONTACT':
'info@ansalon.net', 'CREATED': '1996', 'ICON': 'http://www.ansalon.net/ansalonMSSP.png', 'IP': '66.228.38.196', 'LANGUAGE':
'English', 'LOCATION': 'United States', 'MINIMUM AGE': '0', 'WEBSITE': 'http://www.ansalon.net/', 'FAMILY': 'DikuMUD',
'GENRE': 'Fantasy', 'GAMEPLAY': 'Adventure', 'STATUS': 'Live', 'SUBGENRE': 'Dragonlance', 'AREAS': '191', 'HELPFILES': '942',
'MOBILES': '5688', 'OBJECTS': '7812', 'ROOMS': '19238', 'CLASSES': '11', 'LEVELS': '101', 'RACES': '19', 'MSDP': ['1', '1',
'1'], 'UTF-8': ['1', '1'], 'XTERM 256 COLORS': ['1', '1'], 'MXP': ['1', '1'], 'ADULT MATERIAL': ['1', '0'], 'NEWBIE FRIENDLY':
['1', '1'], 'PLAYER CLANS': ['1', '1'], 'MULTIPLAYING': ['No', ''], 'PLAYERKILLING': ['Yes (With a NOPK option)', '1'], 'QUEST
SYSTEM': ['Automated, Immortal and MOBPROG', '1'], 'ROLEPLAYING': ['Highly Encouraged', '1'], 'WORLD ORIGINALITY': ['All
Original', '1'], 'ANSI': '1', 'GMCP': '0', 'MCCP': '0', 'MCP': '0', 'MSP': '1', 'PUEBLO': '0', 'VT100': '0', 'DBSIZE': '0',
'EXITS': '44076', 'EXTRA DESCRIPTIONS': '6862', 'MUDPROGS': '14234', 'MUDTRIGS': '0', 'RESETS': '19346', 'MULTICLASSING': '0',
'PLAYER CITIES': '0', 'PLAYER CRAFTING': '1', 'PLAYER GUILDS': '1', 'EQUIPMENT SYSTEM': '', 'TRAINING SYSTEM': '1'}
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:767 begin sub-negotiation SB MSDP
DEBUG stream_writer.py:754 sub-negotiation cmd MSDP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSDP] unsolicited
DEBUG stream_writer.py:1792 MSDP: {'SERVER_ID': 'Ansalon MUD'}
DEBUG stream_writer.py:773 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WONT 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: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: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 CHARSET
DEBUG stream_writer.py:1887 handle_do(CHARSET)
DEBUG stream_writer.py:3384 pending_option[WILL + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC WILL CHARSET
DEBUG stream_writer.py:3384 local_option[CHARSET] = True
DEBUG stream_writer.py:3384 pending_option[WILL + CHARSET] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
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 CHARSET
DEBUG stream_writer.py:754 sub-negotiation cmd CHARSET SE completion byte
DEBUG stream_writer.py:2238 [SB + CHARSET] unsolicited
DEBUG client.py:376 encoding negotiated: UTF-8
DEBUG stream_writer.py:2321 send IAC SB CHARSET ACCEPTED UTF-8 IAC SE
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'DO MCCP2_COMPRESS'
DEBUG client_base.py:93 EOF from server, closing.
INFO client_base.py:122 Connection closed to <Peer 66.228.38.196 8650>
DEBUG fingerprinting.py:849 connection for server fingerprint 2d1d3bcf28abae7b
Ansalon MUD (ansalon.net:8662)
Connection Banner:
Server URLs
- Telnet: telnet://ansalon.net:8662
- Play in Browser: LociTerm
- Website: http://www.ansalon.net/
Server Info
Codebase: AnsalonMUD - 1.7b2 (Originally Rom 2.4 Actively Improved since 1996)
Genre: Fantasy
Gameplay: Adventure
Players online: 0 [2]
Uptime: 0 days
Created: 1996
Status: Live
Server Location: 🇺🇸 United States (MSSP)
Language: English
Protocol Support
MUD-specific protocols detected via MSSP flags or Telnet negotiation.
MSSP: Yes (MSSP)
GMCP: No
MSDP: Negotiated
MCCP: No
MCCP2: No
MXP: Negotiated
MSP: Yes (MSSP)
MCP: No
ZMP: No
Telnet Fingerprint
This fingerprint is shared by 57 other servers.
Options requested from client: ATCP, CHARSET, MXP, NAWS, TTYPE
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "2d1d3bcf28abae7b",
"fingerprint-data": {
"offered-options": [],
"probed-protocol": "server",
"refused-options": [],
"requested-options": [
"ATCP",
"CHARSET",
"MXP",
"NAWS",
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"atcp": [
{
"package": "MSDP.SERVER_ID",
"value": "Ansalon MUD"
}
],
"banner_after_return": "",
"banner_before_return": "_________________________________________________________________\n\r/\\--__--__--__--__--__--__--__--__--__--__--__--__--__--__--__--_\\\n\r| ===== A N S A L O N M U D ===== |\n\r \\ --------------------- \\\n\r | |\n\r | Originally by: Jair, Deason and Ahotasu |\n\r / and currently by: Skol and Bharish, /\n\r | with a huge thanks to Malum, Renli and Demilon |\n\r| _________(( ))__________ |\n\r| /.-------./\\\\ //\\.------.\\ |\n\r/ //@@@@@@@//@@\\\\ ) ( //@@\\\\@@@@@@@\\\\ /\n\r| //@@@@@@@//@@@@>>/ \\<<@@@@\\\\@@@@@@@\\\\ |\n\r\\ //O@O@O@O//@O@O// \\\\O@O@\\\\O@O@O@O\\\\ |\n\r///OOOOOOOO//OOOO|| \\ / ||OOOO\\\\OOOOOOOO\\\\ |\n\r///O%O%O%O%//O%O%O%\\\\ ))(( //%O%O%O\\\\%O%O%O%O\\\\ |\n\r||%%%%%%%%//' `%%%%\\\\ // \\\\ //%%%%' `\\\\%%%%%%%%|||\n\r((%%%%%%%(( %%%%%\\\\ (( )) //%%%%% ))%%%%%%%))\\\n\r|\\:::' `::\\\\ `:::::\\\\ \\)^^(/ //:::::' //::' `:::/ |\n\r{x \\ )' `)' (' ` \\\\ `<@ @>' // ' ') `(' __ `( |\n\r| ( \\`\\ )/\\( / / ) / \\ |\n\r/ ______________)_\\_\\oo/__(______oOo________/_/` '\\| /\n\r| / ^^ VVV '|/| |\n\r| | Welcome to Ansalon! ` | |\n\r| | ________________________________________________/ |\n\r| |/ / ,/ \\______/ \\\\ ^\\/^ /'/ |\n\r\\ ___//^ \\_____/\\\\ /'/ \\\n\r| <<<_`\\ <____/\\\\ /''> |\n\r| Learn MORE! ' <____/`- ' _> |\n\r| http://www.Ansalon.net <____/__> |\n\r\\ `---' \\\n\r \\ Credits: (read: where we're from and all that) \\\n\r | |\n\r | History: Crowther & Woods \"Colossal Cave\" Adventure --> |\n\r / MUD1 (Trubshaw & Bartle, 1978) inspired AberMUD (Alan Cox), |\n\r | CopperMUD (Michael Chadwick), and DikuMUD (DIKU team, 1991) |\n\r \\ --> Merc 2.1 --> ROM 2.4b2 --> Ansalon 1.7b \\\n\r | |\n\r | AnsalonMUD is derived from ROM with decades of evolution. |\n\r / Ansalon began as AlphaMUD in 1996, renamed Ansalon in 1997 /\n\r | |\n\r | DikuMUD by Hans Staerfeldt, Katja Nyboe, Tom Madsen, |\n\r | Michael Seifert, and Sebastian Hammer |\n\r / MERC 2.1 code by Hatchet, Furey, and Kahn. /\n\r | ROM 2.4 copyright (c) 1993-1998 Russ Taylor |\n\r| Ansalon 1.7b (c) 1996-2026 David Leverich & John Patrick |\n\r | |\n\r / /| /| |\\ /\n\r \\_/ \\_-/\\_-/\\_-/ \\-/\\_-__-_/\\/\\_-/ \\-/\\_-__\\\\_-/ \\-/\\-/ \\-_\\_\\\n\r\n\r By what name art thou known?\n\r\u001b[7z",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"mssp": {
"ADULT MATERIAL": [
"1",
"0"
],
"ANSI": "1",
"AREAS": "191",
"CLASSES": "11",
"CODEBASE": "AnsalonMUD - 1.7b2 (Originally Rom 2.4 Actively Improved since 1996)",
"CONTACT": "info@ansalon.net",
"CRAWL DELAY": "-1",
"CREATED": "1996",
"DBSIZE": "0",
"EQUIPMENT SYSTEM": "",
"EXITS": "44076",
"EXTRA DESCRIPTIONS": "6862",
"FAMILY": "DikuMUD",
"GAMEPLAY": "Adventure",
"GENRE": "Fantasy",
"GMCP": "0",
"HELPFILES": "942",
"HOSTNAME": "ansalon.net",
"ICON": "http://www.ansalon.net/ansalonMSSP.png",
"IP": "66.228.38.196",
"LANGUAGE": "English",
"LEVELS": "101",
"LOCATION": "United States",
"MCCP": "0",
"MCP": "0",
"MINIMUM AGE": "0",
"MOBILES": "5688",
"MSDP": [
"1",
"1",
"1"
],
"MSP": "1",
"MUDPROGS": "14234",
"MUDTRIGS": "0",
"MULTICLASSING": "0",
"MULTIPLAYING": [
"No",
""
],
"MXP": [
"1",
"1"
],
"NAME": "Ansalon MUD",
"NEWBIE FRIENDLY": [
"1",
"1"
],
"OBJECTS": "7812",
"PLAYER CITIES": "0",
"PLAYER CLANS": [
"1",
"1"
],
"PLAYER CRAFTING": "1",
"PLAYER GUILDS": "1",
"PLAYERKILLING": [
"Yes (With a NOPK option)",
"1"
],
"PLAYERS": "0",
"PORT": "8679",
"PUEBLO": "0",
"QUEST SYSTEM": [
"Automated, Immortal and MOBPROG",
"1"
],
"RACES": "19",
"RESETS": "19346",
"ROLEPLAYING": [
"Highly Encouraged",
"1"
],
"ROOMS": "19238",
"STATUS": "Live",
"SUBGENRE": "Dragonlance",
"TRAINING SYSTEM": "1",
"UPTIME": "1775520205",
"UTF-8": [
"1",
"1"
],
"VT100": "0",
"WEBSITE": "http://www.ansalon.net/",
"WORLD ORIGINALITY": [
"All Original",
"1"
],
"XTERM 256 COLORS": [
"1",
"1"
]
},
"mxp": [
"activated"
],
"option_states": {
"server_offered": {
"AARDWOLF": false,
"ATCP": false,
"GMCP": false,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"ZMP": false
},
"server_requested": {
"AARDWOLF": false,
"ATCP": true,
"CHARSET": true,
"GMCP": false,
"MCCP2": false,
"MCCP3": false,
"MSDP": false,
"MSP": false,
"MSSP": false,
"MXP": true,
"NAWS": true,
"TTYPE": true,
"ZMP": false
}
},
"scan_type": "quick",
"timing": {
"probe": 0.0,
"total": 5.705754280090332
}
}
},
"sessions": [
{
"connected": "2026-03-07T04:02:46.324343+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 8662
},
{
"connected": "2026-04-07T06:50:21.538354+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 8662
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug ansalon.net 8662
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=ansalon.net port=8662
INFO client_base.py:190 Connected to <Peer 66.228.38.196 8662>
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 + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
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 + 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 + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
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 + 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 + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
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 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 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 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 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 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 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 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:767 begin sub-negotiation SB ATCP
DEBUG stream_writer.py:754 sub-negotiation cmd ATCP SE completion byte
DEBUG stream_writer.py:2238 [SB + ATCP] unsolicited
DEBUG stream_writer.py:1820 ATCP: MSDP.SERVER_ID 'Ansalon MUD'
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 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:767 begin sub-negotiation SB MXP
DEBUG stream_writer.py:754 sub-negotiation cmd MXP SE completion byte
DEBUG stream_writer.py:2238 [SB + MXP] unsolicited
DEBUG stream_writer.py:1805 MXP: b''
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 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 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 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 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:767 begin sub-negotiation SB MSDP
DEBUG stream_writer.py:754 sub-negotiation cmd MSDP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSDP] unsolicited
DEBUG stream_writer.py:1792 MSDP: {'SERVER_ID': 'Ansalon MUD'}
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:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'NAME': 'Ansalon MUD', 'PLAYERS': '0', 'UPTIME': '1775520205', 'CRAWL DELAY': '-1', 'HOSTNAME':
'ansalon.net', 'PORT': '8679', 'CODEBASE': 'AnsalonMUD - 1.7b2 (Originally Rom 2.4 Actively Improved since 1996)', 'CONTACT':
'info@ansalon.net', 'CREATED': '1996', 'ICON': 'http://www.ansalon.net/ansalonMSSP.png', 'IP': '66.228.38.196', 'LANGUAGE':
'English', 'LOCATION': 'United States', 'MINIMUM AGE': '0', 'WEBSITE': 'http://www.ansalon.net/', 'FAMILY': 'DikuMUD',
'GENRE': 'Fantasy', 'GAMEPLAY': 'Adventure', 'STATUS': 'Live', 'SUBGENRE': 'Dragonlance', 'AREAS': '191', 'HELPFILES': '942',
'MOBILES': '5688', 'OBJECTS': '7812', 'ROOMS': '19238', 'CLASSES': '11', 'LEVELS': '101', 'RACES': '19', 'MSDP': ['1', '1',
'1'], 'UTF-8': ['1', '1'], 'XTERM 256 COLORS': ['1', '1'], 'MXP': ['1', '1'], 'ADULT MATERIAL': ['1', '0'], 'NEWBIE FRIENDLY':
['1', '1'], 'PLAYER CLANS': ['1', '1'], 'MULTIPLAYING': ['No', ''], 'PLAYERKILLING': ['Yes (With a NOPK option)', '1'], 'QUEST
SYSTEM': ['Automated, Immortal and MOBPROG', '1'], 'ROLEPLAYING': ['Highly Encouraged', '1'], 'WORLD ORIGINALITY': ['All
Original', '1'], 'ANSI': '1', 'GMCP': '0', 'MCCP': '0', 'MCP': '0', 'MSP': '1', 'PUEBLO': '0', 'VT100': '0', 'DBSIZE': '0',
'EXITS': '44076', 'EXTRA DESCRIPTIONS': '6862', 'MUDPROGS': '14234', 'MUDTRIGS': '0', 'RESETS': '19346', 'MULTICLASSING': '0',
'PLAYER CITIES': '0', 'PLAYER CRAFTING': '1', 'PLAYER GUILDS': '1', 'EQUIPMENT SYSTEM': '', 'TRAINING SYSTEM': '1'}
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 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 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 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: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: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 CHARSET
DEBUG stream_writer.py:1887 handle_do(CHARSET)
DEBUG stream_writer.py:3384 pending_option[WILL + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC WILL CHARSET
DEBUG stream_writer.py:3384 local_option[CHARSET] = True
DEBUG stream_writer.py:3384 pending_option[WILL + CHARSET] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
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 CHARSET
DEBUG stream_writer.py:754 sub-negotiation cmd CHARSET SE completion byte
DEBUG stream_writer.py:2238 [SB + CHARSET] unsolicited
DEBUG client.py:376 encoding negotiated: UTF-8
DEBUG stream_writer.py:2321 send IAC SB CHARSET ACCEPTED UTF-8 IAC SE
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'DO MCCP2_COMPRESS'
DEBUG client_base.py:93 EOF from server, closing.
INFO client_base.py:122 Connection closed to <Peer 66.228.38.196 8662>
DEBUG fingerprinting.py:849 connection for server fingerprint 2d1d3bcf28abae7b
Ansalon MUD (ansalon.net:8679)
Connection Banner:
Server URLs
- Telnet: telnet://ansalon.net:8679
- Play in Browser: LociTerm
- Website: http://www.ansalon.net/
Server Info
Codebase: AnsalonMUD - 1.7b2 (Originally Rom 2.4 Actively Improved since 1996)
Genre: Fantasy
Gameplay: Adventure
Players online: 8 [3]
Uptime: 0 days
Created: 1996
Status: Live
Server Location: 🇺🇸 United States (MSSP)
Language: English
Protocol Support
MUD-specific protocols detected via MSSP flags or Telnet negotiation.
MSSP: Yes (MSSP)
GMCP: No
MSDP: Negotiated
MCCP: No
MCCP2: No
MXP: Negotiated
MSP: Yes (MSSP)
MCP: No
ZMP: No
Telnet Fingerprint
This fingerprint is shared by 57 other servers.
Options requested from client: ATCP, CHARSET, MXP, NAWS, TTYPE
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "2d1d3bcf28abae7b",
"fingerprint-data": {
"offered-options": [],
"probed-protocol": "server",
"refused-options": [],
"requested-options": [
"ATCP",
"CHARSET",
"MXP",
"NAWS",
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"atcp": [
{
"package": "MSDP.SERVER_ID",
"value": "Ansalon MUD"
}
],
"banner_after_return": "",
"banner_before_return": "_________________________________________________________________\n\r/\\--__--__--__--__--__--__--__--__--__--__--__--__--__--__--__--_\\\n\r| ===== A N S A L O N M U D ===== |\n\r \\ --------------------- \\\n\r | |\n\r | Originally by: Jair, Deason and Ahotasu |\n\r / and currently by: Skol and Bharish, /\n\r | with a huge thanks to Malum, Renli and Demilon |\n\r| _________(( ))__________ |\n\r| /.-------./\\\\ //\\.------.\\ |\n\r/ //@@@@@@@//@@\\\\ ) ( //@@\\\\@@@@@@@\\\\ /\n\r| //@@@@@@@//@@@@>>/ \\<<@@@@\\\\@@@@@@@\\\\ |\n\r\\ //O@O@O@O//@O@O// \\\\O@O@\\\\O@O@O@O\\\\ |\n\r///OOOOOOOO//OOOO|| \\ / ||OOOO\\\\OOOOOOOO\\\\ |\n\r///O%O%O%O%//O%O%O%\\\\ ))(( //%O%O%O\\\\%O%O%O%O\\\\ |\n\r||%%%%%%%%//' `%%%%\\\\ // \\\\ //%%%%' `\\\\%%%%%%%%|||\n\r((%%%%%%%(( %%%%%\\\\ (( )) //%%%%% ))%%%%%%%))\\\n\r|\\:::' `::\\\\ `:::::\\\\ \\)^^(/ //:::::' //::' `:::/ |\n\r{x \\ )' `)' (' ` \\\\ `<@ @>' // ' ') `(' __ `( |\n\r| ( \\`\\ )/\\( / / ) / \\ |\n\r/ ______________)_\\_\\oo/__(______oOo________/_/` '\\| /\n\r| / ^^ VVV '|/| |\n\r| | Welcome to Ansalon! ` | |\n\r| | ________________________________________________/ |\n\r| |/ / ,/ \\______/ \\\\ ^\\/^ /'/ |\n\r\\ ___//^ \\_____/\\\\ /'/ \\\n\r| <<<_`\\ <____/\\\\ /''> |\n\r| Learn MORE! ' <____/`- ' _> |\n\r| http://www.Ansalon.net <____/__> |\n\r\\ `---' \\\n\r \\ Credits: (read: where we're from and all that) \\\n\r | |\n\r | History: Crowther & Woods \"Colossal Cave\" Adventure --> |\n\r / MUD1 (Trubshaw & Bartle, 1978) inspired AberMUD (Alan Cox), |\n\r | CopperMUD (Michael Chadwick), and DikuMUD (DIKU team, 1991) |\n\r \\ --> Merc 2.1 --> ROM 2.4b2 --> Ansalon 1.7b \\\n\r | |\n\r | AnsalonMUD is derived from ROM with decades of evolution. |\n\r / Ansalon began as AlphaMUD in 1996, renamed Ansalon in 1997 /\n\r | |\n\r | DikuMUD by Hans Staerfeldt, Katja Nyboe, Tom Madsen, |\n\r | Michael Seifert, and Sebastian Hammer |\n\r / MERC 2.1 code by Hatchet, Furey, and Kahn. /\n\r | ROM 2.4 copyright (c) 1993-1998 Russ Taylor |\n\r| Ansalon 1.7b (c) 1996-2026 David Leverich & John Patrick |\n\r | |\n\r / /| /| |\\ /\n\r \\_/ \\_-/\\_-/\\_-/ \\-/\\_-__-_/\\/\\_-/ \\-/\\_-__\\\\_-/ \\-/\\-/ \\-_\\_\\\n\r\n\r By what name art thou known?\n\r\u001b[7z",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"mssp": {
"ADULT MATERIAL": [
"1",
"0"
],
"ANSI": "1",
"AREAS": "191",
"CLASSES": "11",
"CODEBASE": "AnsalonMUD - 1.7b2 (Originally Rom 2.4 Actively Improved since 1996)",
"CONTACT": "info@ansalon.net",
"CRAWL DELAY": "-1",
"CREATED": "1996",
"DBSIZE": "0",
"EQUIPMENT SYSTEM": "",
"EXITS": "44076",
"EXTRA DESCRIPTIONS": "6862",
"FAMILY": "DikuMUD",
"GAMEPLAY": "Adventure",
"GENRE": "Fantasy",
"GMCP": "0",
"HELPFILES": "942",
"HOSTNAME": "ansalon.net",
"ICON": "http://www.ansalon.net/ansalonMSSP.png",
"IP": "66.228.38.196",
"LANGUAGE": "English",
"LEVELS": "101",
"LOCATION": "United States",
"MCCP": "0",
"MCP": "0",
"MINIMUM AGE": "0",
"MOBILES": "5688",
"MSDP": [
"1",
"1",
"1"
],
"MSP": "1",
"MUDPROGS": "14234",
"MUDTRIGS": "0",
"MULTICLASSING": "0",
"MULTIPLAYING": [
"No",
""
],
"MXP": [
"1",
"1"
],
"NAME": "Ansalon MUD",
"NEWBIE FRIENDLY": [
"1",
"1"
],
"OBJECTS": "7812",
"PLAYER CITIES": "0",
"PLAYER CLANS": [
"1",
"1"
],
"PLAYER CRAFTING": "1",
"PLAYER GUILDS": "1",
"PLAYERKILLING": [
"Yes (With a NOPK option)",
"1"
],
"PLAYERS": "8",
"PORT": "8679",
"PUEBLO": "0",
"QUEST SYSTEM": [
"Automated, Immortal and MOBPROG",
"1"
],
"RACES": "19",
"RESETS": "19346",
"ROLEPLAYING": [
"Highly Encouraged",
"1"
],
"ROOMS": "19238",
"STATUS": "Live",
"SUBGENRE": "Dragonlance",
"TRAINING SYSTEM": "1",
"UPTIME": "1775520379",
"UTF-8": [
"1",
"1"
],
"VT100": "0",
"WEBSITE": "http://www.ansalon.net/",
"WORLD ORIGINALITY": [
"All Original",
"1"
],
"XTERM 256 COLORS": [
"1",
"1"
]
},
"mxp": [
"activated"
],
"option_states": {
"server_offered": {
"AARDWOLF": false,
"ATCP": false,
"GMCP": false,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"ZMP": false
},
"server_requested": {
"AARDWOLF": false,
"ATCP": true,
"CHARSET": true,
"GMCP": false,
"MCCP2": false,
"MCCP3": false,
"MSDP": false,
"MSP": false,
"MSSP": false,
"MXP": true,
"NAWS": true,
"TTYPE": true,
"ZMP": false
}
},
"scan_type": "quick",
"timing": {
"probe": 0.0,
"total": 5.651554107666016
}
}
},
"sessions": [
{
"connected": "2026-03-07T04:14:24.786170+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 8679
},
{
"connected": "2026-04-05T19:07:31.959783+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 8679
},
{
"connected": "2026-04-07T07:13:27.850084+00:00",
"host": "ansalon.net",
"ip": "66.228.38.196",
"port": 8679
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug ansalon.net 8679
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=ansalon.net port=8679
INFO client_base.py:190 Connected to <Peer 66.228.38.196 8679>
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 + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
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 + 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 + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + 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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL 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 + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
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 + 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 + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + 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 + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
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 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 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 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 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 MSDP
DEBUG stream_writer.py:2010 handle_dont(MSDP)
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:3384 local_option[MSDP] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC 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:767 begin sub-negotiation SB MXP
DEBUG stream_writer.py:754 sub-negotiation cmd MXP SE completion byte
DEBUG stream_writer.py:2238 [SB + MXP] unsolicited
DEBUG stream_writer.py:1805 MXP: b''
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:767 begin sub-negotiation SB ATCP
DEBUG stream_writer.py:754 sub-negotiation cmd ATCP SE completion byte
DEBUG stream_writer.py:2238 [SB + ATCP] unsolicited
DEBUG stream_writer.py:1820 ATCP: MSDP.SERVER_ID 'Ansalon MUD'
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 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 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 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:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'NAME': 'Ansalon MUD', 'PLAYERS': '8', 'UPTIME': '1775520379', 'CRAWL DELAY': '-1', 'HOSTNAME':
'ansalon.net', 'PORT': '8679', 'CODEBASE': 'AnsalonMUD - 1.7b2 (Originally Rom 2.4 Actively Improved since 1996)', 'CONTACT':
'info@ansalon.net', 'CREATED': '1996', 'ICON': 'http://www.ansalon.net/ansalonMSSP.png', 'IP': '66.228.38.196', 'LANGUAGE':
'English', 'LOCATION': 'United States', 'MINIMUM AGE': '0', 'WEBSITE': 'http://www.ansalon.net/', 'FAMILY': 'DikuMUD',
'GENRE': 'Fantasy', 'GAMEPLAY': 'Adventure', 'STATUS': 'Live', 'SUBGENRE': 'Dragonlance', 'AREAS': '191', 'HELPFILES': '942',
'MOBILES': '5688', 'OBJECTS': '7812', 'ROOMS': '19238', 'CLASSES': '11', 'LEVELS': '101', 'RACES': '19', 'MSDP': ['1', '1',
'1'], 'UTF-8': ['1', '1'], 'XTERM 256 COLORS': ['1', '1'], 'MXP': ['1', '1'], 'ADULT MATERIAL': ['1', '0'], 'NEWBIE FRIENDLY':
['1', '1'], 'PLAYER CLANS': ['1', '1'], 'MULTIPLAYING': ['No', ''], 'PLAYERKILLING': ['Yes (With a NOPK option)', '1'], 'QUEST
SYSTEM': ['Automated, Immortal and MOBPROG', '1'], 'ROLEPLAYING': ['Highly Encouraged', '1'], 'WORLD ORIGINALITY': ['All
Original', '1'], 'ANSI': '1', 'GMCP': '0', 'MCCP': '0', 'MCP': '0', 'MSP': '1', 'PUEBLO': '0', 'VT100': '0', 'DBSIZE': '0',
'EXITS': '44076', 'EXTRA DESCRIPTIONS': '6862', 'MUDPROGS': '14234', 'MUDTRIGS': '0', 'RESETS': '19346', 'MULTICLASSING': '0',
'PLAYER CITIES': '0', 'PLAYER CRAFTING': '1', 'PLAYER GUILDS': '1', 'EQUIPMENT SYSTEM': '', 'TRAINING SYSTEM': '1'}
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 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:767 begin sub-negotiation SB MSDP
DEBUG stream_writer.py:754 sub-negotiation cmd MSDP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSDP] unsolicited
DEBUG stream_writer.py:1792 MSDP: {'SERVER_ID': 'Ansalon MUD'}
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 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 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 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: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: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 CHARSET
DEBUG stream_writer.py:1887 handle_do(CHARSET)
DEBUG stream_writer.py:3384 pending_option[WILL + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC WILL CHARSET
DEBUG stream_writer.py:3384 local_option[CHARSET] = True
DEBUG stream_writer.py:3384 pending_option[WILL + CHARSET] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
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 CHARSET
DEBUG stream_writer.py:754 sub-negotiation cmd CHARSET SE completion byte
DEBUG stream_writer.py:2238 [SB + CHARSET] unsolicited
DEBUG client.py:376 encoding negotiated: UTF-8
DEBUG stream_writer.py:2321 send IAC SB CHARSET ACCEPTED UTF-8 IAC SE
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'DO MCCP2_COMPRESS'
DEBUG client_base.py:93 EOF from server, closing.
INFO client_base.py:122 Connection closed to <Peer 66.228.38.196 8679>
DEBUG fingerprinting.py:849 connection for server fingerprint 2d1d3bcf28abae7b