1017 Error and packet trace
			 
			 
			
		
		
		
		In the hopes of helping the devs figure out some of the 1017 problems that have been plagueing people (including me...), I edited some of the source to print out packet info. 
 
My setup is on two computers, both behind a separate firewall (Linux NAT, yes, ports 9000, 7995-7999 are forwarded).  The server (running world, zone and mysql on linux 2.4.18 ) is 192.168.0.5 and the client (running EQ through EQPatch) is 192.168.0.10.  I did the DNS thing, with fortress13.no-ip.org pointing to the external address of my firewall, and all my internal host files pointing to 192.168.0.5. 
 
My problem has been that after I leave the character select screen, I almost immediately get disconnected (1017).  There are no firewall measures internal to the main firewall, so all packets between the client and server should be getting through (verified by a quick look at iptraf). 
 
db.ini: 
[Database] 
host=localhost 
user=xxxx 
password=xxxx 
database=eqemu 
compression=off 
 
LoginServer.ini: 
[LoginServer] 
loginserver=eqlogin1.eqemu.net 
loginserver2=eqlogin2.eqemu.net 
loginport=5999 
loginport2=5999 
worldname=Fortress13 
worldaddress=fortress13.no-ip.org 
locked=false 
account= 
password= 
 
[WorldServer] 
Defaultstatus= 
Unavailzone= 
 
[LoginConfig] 
ServerMode=Standalone 
ServerPort=5999 
UplinkAddress= 
UplinkPort= 
UplinkAccount= 
UplinkPassword= 
 
runzone (bash script to start zoneservers): 
#!/bin/bash 
ADDRESS="fortress13.no-ip.org" 
WADDRESS="127.0.0.1" 
for i in 7995 7996 7997 
do 
	echo "./zone . ${ADDRESS} $i ${WADDRESS}" 
	./zone . ${ADDRESS} $i ${WADDRESS} & 
done 
 
 
The only changes I've made to the source were setting things like 
 
#define LOG_TCP_PACKETS 1 
 
along with 
 
#include <stdlib.h> 
 
in a couple places to make mob.cpp and MobAI.cpp (among others I think) compile on my system (rand(), atoi(), etc).  I also had to edit the makefiles a little, but that's just because MySQL is installed in a stupid place on my system...  Oh, and I'm running the latest CVS (although I've had the 1017 problem with all versions I can get ahold of since 4.2). 
 
Anyway, here's what I get when I run world and try to connect (pardon the size). 
 
Using database 'eqemu' at localhost 
[Status] CURRENT_WORLD_VERSION:EQEMu 0.4.3 
[Error] CURRENT_WORLD_VERSION:EQEMu 0.4.3 
Loading Variables, zone names & items... 
EMuShareMem.dll loaded. 
Loading items from database... 
...done. 
LoginServer.ini read. 
Loading guild ranks...done. 
Loading EQ time of day...done. 
Deleted 0 stale player corpses from database. 
Deleted -1 stale player backups from database. 
Assassinating people that whine about horses...done 
TCP listening on: fortress13.no-ip.org:9000 
World server listening on: fortress13.no-ip.org:9000 
Connected to LoginServer: eqlogin2.eqemu.net:5999 
2003/03/16 09:00:09.493 GMT: Logging outgoing TCP OldPacket. OPCode: 0x1000, size:   603 64.81.113.117:5999 
2003/03/16 09:00:09.493 GMT: Logging outgoing TCP OldPacket. OPCode: 0x1001, size:    12 64.81.113.117:5999 
2003/03/16 09:00:24.502 GMT: Logging outgoing TCP OldPacket. OPCode: 0x1001, size:    12 64.81.113.117:5999 
17743 New TCP connection: 127.0.0.1:1952 
17760 New TCP connection: 127.0.0.1:1953 
New zoneserver: #1 127.0.0.1:1953 
New zoneserver: #2 127.0.0.1:1952 
17820 New TCP connection: 127.0.0.1:1954 
2003/03/16 09:00:27.232 GMT: Logging incoming TCP packet. OPCode: 0x0025, size:    16 127.0.0.1:1952 
2003/03/16 09:00:27.233 GMT: Logging incoming TCP packet. OPCode: 0x0008, size:   252 127.0.0.1:1952 
2003/03/16 09:00:27.233 GMT: Logging incoming TCP packet. OPCode: 0x0025, size:    16 127.0.0.1:1953 
2003/03/16 09:00:27.233 GMT: Logging incoming TCP packet. OPCode: 0x0008, size:   252 127.0.0.1:1953 
New zoneserver: #3 127.0.0.1:1954 
Zoneserver SetConnectInfo: 127.0.0.1:1952: fortress13.no-ip.org:7997 
Zoneserver SetConnectInfo: 127.0.0.1:1953: fortress13.no-ip.org:7996 
2003/03/16 09:00:27.292 GMT: Logging incoming TCP packet. OPCode: 0x0025, size:    16 127.0.0.1:1954 
2003/03/16 09:00:27.293 GMT: Logging incoming TCP packet. OPCode: 0x0008, size:   252 127.0.0.1:1954 
Zoneserver SetConnectInfo: 127.0.0.1:1954: fortress13.no-ip.org:7995 
2003/03/16 09:00:27.402 GMT: Logging incoming TCP OldPacket. OPCode: 0xab00, size:    16 64.81.113.117:5999 
2003/03/16 09:00:27.424 GMT: Logging outgoing TCP OldPacket. OPCode: 0xab01, size:    17 64.81.113.117:5999 
2003/03/16 09:00:27.522 GMT: Logging incoming TCP OldPacket. OPCode: 0x1002, size:    67 64.81.113.117:5999 
2003/03/16 09:00:30.923 GMT: [EQN]  Logging incoming packet. OPCode: 0x5818, size:   196 
21540 New client from ip: 192.168.0.10 port: 3418 
Logged in: FirstLogin LS#18561: dpw13 
2003/03/16 09:00:30.963 GMT: [EQN]  Logging outgoing packet. OPCode: 0x5941, size:     0 
2003/03/16 09:00:30.963 GMT: [EQN]  Logging outgoing packet. OPCode: 0x0710, size:     1 
2003/03/16 09:00:30.963 GMT: [EQN]  Logging outgoing packet. OPCode: 0x0180, size:     1 
2003/03/16 09:00:30.963 GMT: [EQN]  Logging outgoing packet. OPCode: 0xd841, size:     4 
2003/03/16 09:00:39.522 GMT: Logging outgoing TCP OldPacket. OPCode: 0x1001, size:    12 64.81.113.117:5999 
2003/03/16 09:00:50.142 GMT: [EQN]  Logging incoming packet. OPCode: 0x9241, size:     4 
Sending list of guilds 
2003/03/16 09:00:50.162 GMT: [EQN]  Logging outgoing packet. OPCode: 0x4740, size:  1620 
2003/03/16 09:00:50.163 GMT: [EQN]  Logging outgoing packet. OPCode: 0x9241, size: 49156 
2003/03/16 09:00:53.843 GMT: [EQN]  Logging incoming packet. OPCode: 0x3541, size:  2056 
Unknown opcode: 0x3541 size:2056 
2003/03/16 09:00:54.403 GMT: [EQN]  Logging incoming packet. OPCode: 0x3941, size:  2056 
2003/03/16 09:00:54.422 GMT: [EQN]  Logging incoming packet. OPCode: 0x9240, size:    12 
Unknown opcode: 0x3941 size:2056 
Unknown opcode: 0x9240 size:12 
   0: 00 00 00 01 00 00 00 00 - 00 00 00 00              | ............ 
2003/03/16 09:00:54.542 GMT: Logging outgoing TCP OldPacket. OPCode: 0x1001, size:    12 64.81.113.117:5999 
2003/03/16 09:00:56.783 GMT: [EQN]  Logging incoming packet. OPCode: 0x0180, size:     5 
Error: InflatePacket: inflate() returned -3 'unknown compression method' 
Packet contents:Vven 
Attempting autobootup of neriakb (41) for Vven 
2003/03/16 09:00:56.785 GMT: Logging outgoing TCP packet. OPCode: 0x0006, size:    73 127.0.0.1:1952 
2003/03/16 09:00:56.802 GMT: [EQN]  Logging outgoing packet. OPCode: 0xdd41, size:    15 
2003/03/16 09:00:56.832 GMT: Logging incoming TCP packet. OPCode: 0x0003, size:     5 127.0.0.1:1952 
2003/03/16 09:00:56.833 GMT: Logging incoming TCP packet. OPCode: 0x200c, size:     0 127.0.0.1:1952 
Zoneserver SetZone: fortress13.no-ip.org:7997 neriakb (41) 
2003/03/16 09:00:56.843 GMT: Logging outgoing TCP packet. OPCode: 0x0027, size:   117 127.0.0.1:1952 
Enter world: Vven: neriakb (41) 
Entering zone after character select screen. 
2003/03/16 09:00:56.844 GMT: Logging outgoing TCP packet. OPCode: 0x0024, size:     5 127.0.0.1:1952 
Broadcasting a world time update 
2003/03/16 09:00:56.844 GMT: Logging outgoing TCP packet. OPCode: 0x200e, size:    12 127.0.0.1:1952 
2003/03/16 09:00:56.893 GMT: Logging incoming TCP packet. OPCode: 0x0003, size:     5 127.0.0.1:1952 
2003/03/16 09:00:56.893 GMT: Logging incoming TCP packet. OPCode: 0x0024, size:     5 127.0.0.1:1952 
Zoneserver SetZone: fortress13.no-ip.org:7997 neriakb (41) 
2003/03/16 09:00:56.903 GMT: [EQN]  Logging outgoing packet. OPCode: 0x0480, size:   130 
Client disconnected 
Removing client from ip:192.168.0.10 port:3418 
2003/03/16 09:01:09.563 GMT: Logging outgoing TCP OldPacket. OPCode: 0x1001, size:    12 64.81.113.117:5999 
 
 
AFAIK, this happens with any zone and any character.  [EQN] just means EQNetwork.cpp generated the output.  I think that's it, I hope this helps.  I'd be glad to provide more in-depth logs if needed. 
		
	
		
		
		
		
		
		
		
		
		
	
		
			
			
			
			
				 
			
			
			
			
			
			
				
			
			
			
		 
		
	
	
	 |