[1726] in linux-net channel archive
printing from Linux to NT3.31
daemon@ATHENA.MIT.EDU (wantling@wgc.rx.xerox.com)
Mon Jan 29 08:09:48 1996
Date: Mon, 29 Jan 1996 11:45:08 PST
From: wantling@wgc.rx.xerox.com
To: linux-net@vger.rutgers.edu
I am try desparately to simplify my Linux/Novell/Macintosh/NT printing by doing all the
printing to a laser on LPT1 of my NT server. Everthing works except from Linux.
When I issue lpq or lpr commands, they work once, but won't work a few minutes later. Either
lpq or lpr will hang trying to connect to socket 515 on the NT machine. The NT machine
shows that socket 515 is already in use still from the previous lpq or lpr, in "TIME_WAIT"
status. If I wait about 20 minutes, then the socket on NT becomes free and lpq and lpr
work once more.
Using TCPDUMP, I see that when I do the lpq, then the connection goes through the correct
disconnection sequence, i.e. a FIN from the Linux machine that gets acked by NT, then
NT issues a FIN and Linux acks that. Linux frees it's socket (usually 1023) but socket
515 on NT stays in "TIME-WAIT". Issuing another lpq or lpr sends a SYN from Linux which
gets acked by NT but assumes a sequence number based on the previous connection!
What puzzles me is that Suns can do the lpq and lpr OK every time, but the saving grace
is that the Suns realise what's going on and send a "RESET" to NT.
Both machines are on the local LAN and have correct addresses, netmasks and routes. The
Linux Kernel is 1.2.5.
I need to get this working, but it seems that I have three problems here:-
1) NT won't let go socket 515 until it gets a reset or the TIME_WAIT completes.
2) NT doesn't seem to handle the repeated SYN correctly when in some states.
3) Linux doesn't issue a RESET like the Suns do when the protocol gets screwed.
Has anybody else seen problems like this? If I could get Linux to do the RESET then it
would all work fine. Getting NT fixed is probably too expensive and would take for the
rest of my life to get a resolution out of Microsoft!
I would appreciate any help that TCP Gurus out there can give please!
TIA,
Colin WAntling