ETHERNET INTERFACE
ETHERNET – Quick
Installation Guide
- Connect the printer to your network (the IP address
will be automatically assigned by your DHCP server)
- Load
tickets into the printer
- Wait
one minute to allow assignment of IP address
- Print a test ticket to identify the printer's IP
address
- Ping the printer
- Open your web browser and type the printer’s IP address
to review its configuration
- If you experience any problems, please refer to
the Ethernet Interface Addendum or email mike@bocasystems.com
Warning
Ethernet is a network interface
where the printer connects directly to your LAN. This interface is very sensitive to timing issues that may
be exacerbated by failing to follow the recommended printer communication
protocols. Specifically, the
excessive use of the printer’s flash commands will result in significantly
reduced ticket throughput and potential network problems. We strongly recommend restricting the
use of flash commands to periodic initialization routines. Under no circumstances should flash
commands be used on every ticket. (Most
lower case commands with the exception of <p>, <q>, <n> and
<t> are flash commands.)
General
Each Boca Ethernet Printer is assigned a unique MAC
address based in part on the printer's serial number. All Boca printers
are factory configured in DHCP enabled mode. (Exceptions may be made by
special request.) If the printer is unable to get a dynamic IP address
from the customer's network in the allotted time period (about one minute), it
will default to the 10.0.0.192 address. You can select a different fixed
IP address either via a Web Browser or the printer’s control panel (available on
certain models):
Set Static IP address
Web Browser (same Network number)
· Set browser
to 10.0.0.192
· Change the
Ethernet setting from DHCP ENABLED to YES
· Enter
desired IP address
· Save
|
Control Panel
·
Activate control panel
·
Go to Ethernet
·
Change from DHCP ENABLED to YES
·
Enter IP Address
·
Save and Exit
|
Web Browser (different Network number)
· Change
the computer’s IP address to communicate with the printer
o Connect the
printer directly to the Host using an Ethernet crossover cable.
o Check
Control Panel>Network Connections>Local Area Connections>Properties
o Scroll down
and highlight Internet Protocol (TCP/IP)
o Click
properties.
o Record the
present settings on this screen before making any changes.
o Click 'Use
the following IP address'. Fill in the fields as follows:
o IP address:
10.0.0.191
o Subnet
mask: 255:255:255:0
o Default
gateway 10.0.0.191
o You can
leave the DNS fields blank.
o Click OK,
then Close.
o Wait 30
seconds.
You should now be able to ping the printer
at 10.0.0.192.
· Change
the printer’s IP address to communicate on your network
o Set browser
to 10.0.0.192
o Change the
ETHERNET setting on the printer from DHCP ENABLED to YES
o Enter the
desired IP ADDRESS.
o Do not
change the printer’s subnet mask or default gateway
o (A WAN
using multiple gateways may require the setting of the default gateway and
subnet mask.)
o Save
· Set the
Computer back to its original settings (IP address, subnet mask, default
gateway)
o Remove the
Ethernet crossover cable
o Connect the
computer and the printer to the network using standard Ethernet cables
o Restore the
computer’s original network settings in Control panel>Network
Connections>Local Area Connections>Properties
|
NOTE: The printer's IP address is printed on the test
ticket. If using DHCP, it may take up to one minute to obtain a valid IP
address. Until then, it will display all zeros on the test ticket.
SUPPORTED PROTOCOLS (must use default port values).
While Boca does not support every Ethernet protocol, the
printer supports a sufficient number of high level protocols to function effectively as a network printer. Below is a list of supported and
non-supported features of the printer. More support may be added in the future as needed.
CATEGORY
|
SUPPORTED FEATURE
|
UNSUPPORTED FEATURE
|
Frames
|
Ethernet version 2 |
IEEE 802.3 |
Ping
|
Number of echo requests |
Loose source route along host - list |
|
Buffer size |
Strict source route along host - list |
|
Record route |
|
|
Time to live |
|
|
Timestamp |
|
ARP
|
ARP request |
RARP request |
|
ARP response |
RARP response |
|
|
Dynamic RARP request |
|
|
Dynamic RARP response |
|
|
InARP request |
|
|
InARP reply |
|
|
|
ICMP
|
Echo |
Destination Unreachable |
|
Echo Reply |
Source Quench |
|
Parameter Problem |
Redirect |
|
|
Time Exceeded |
|
|
Timestamp |
|
|
Timestamp Reply |
|
|
Information Request |
|
|
Information Reply
Address Mask Request
Address Mask Reply |
Ipv4
|
Internet Timestamp |
Loose Source and Record Route |
|
Record Route |
Strict Source and Record Route |
|
Stream Identifier |
Fragmented IP packets |
|
Security - all levels accepted |
|
TCP
|
MSS |
All others (SACK, echo, etc.) |
HTTP
|
GET, POST
|
HEAD
|
UDP
|
Supports DHCP datagrams
|
Presently no other UDP datagrams |
DHCP |
Automatic or Dynamic IP
allocation |
DHCP Release, DHCP Inform |
Unsupported Protocols:
IPv6, SNMP, DNS, SMTP, TFTP, FTP, TELNET, IPP, DLC
Network ports (port monitors) supported:
Works with Microsoft Standard
TCP/IP port - SNMP disabled
Works
with HP Standard TCP/IP port - SNMP disabled
Works
with Microsoft LPR port
PING UTITITY
You can use the MS-DOS Ping command for diagnostic testing
and to verify the network connection.
· ping 10.0.0.192 will ping the network printer 10.0.0.192 four
times.
NETWORK INTERFACES supported under TCP/IP
SUPPORTED INTERFACE
|
COMMENTS
|
Windows Socket API |
Bi-directional Raw TCP protocol between printer and Host
(port 9100) |
LPD/LPR |
Unidirectional LPD protocol data to printer (port 515) |
|
All commands supported except “remove jobs” |
|
|
UNSUPPORTED INTERFACE
|
COMMENTS
|
APP Socket |
Raw TCP protocol data from Host to printer (port 9100) |
|
Status returned to Host as UDP data on Port 9101 |
RAW TCP OPERATION
TCP communication is initiated by opening the connection
(item 1) and terminated by closing the connection (item 4). Item 2 is necessary to print
tickets. The printer can
return status data (item 3) either in response to an external status request or
as a result of a change in printer status. Each item below must be completed with the indicated
acknowledgement. In the event that
the item is not completed, the printer may initiate a timeout to close the port
and discontinue the application (see Retransmit Command Timeout). In the event that the connection
remains open for an excessive amount of time, the printer may reset the
connection and discontinue the application if another application requests
service (see Idle Timeout Command).
- Host
opens the connection / Printer acknowledges / Host acknowledges
- Host
sends data / Printer acknowledges
- Printer
sends data / Host acknowledges (RAW TCP only)
- Host
closes the connection / Printer acknowledges / Host acknowledges
Please note that the printer will only allow one open
connection at a time. Normally, an
application will open a connection and close it after the ticket data has been
sent and all status has been received. Any other applications requesting a connection will be refused until the
original connection has been closed or the idle timeout period has expired.
WEB
CONFIGURATION:
The printer can be configured across the network by typing
in its IP address in the Address Bar of a Web Browser. It will allow you to set the same
configuration options available under the control panel Factory Menu.
CONTROL PANEL CONFIGURATION:
Changing
‘ETHERNET’ setting
- Please
follow these steps to change the ETHERNET setting on your Ethernet
printer.
- Depress
both the MENU and CHOICES buttons while turning on
the printer. Keep both buttons
depressed unit FACTORY MENU appears in the LCD window or
the display starts scrolling through different topics.
- Using
the MENU button scroll down to
the ETHERNET? topic and press the CHOICE button.
- The
blinking cursor indicates the current setting selected. Every time you press the CHOICE button the setting option will change.
- Choose
the appropriate setting. Select ‘DHCP ENABLED’ for dynamic addressing or ‘YES’ for using a
fixed IP address.
- Press
the TEST button to enter that
setting.
- Now
the display will show EXIT AND SAVE. Press the TEST button to save the setting
entered.
- Note:
if you selected ‘YES’ then you can use the default IP of 10.0.0.192 or set
a different one as described next.
Changing ‘IP
ADDRESS’
- Please
follow these steps to change the fixed IP address on your Ethernet
printer. Note: if using a
fixed IP address make sure the ‘ETHERNET’ setting
is set to ‘YES’ (see above).
- Depress
both the MENU and CHOICES buttons while turning on
the printer. Keep both
buttons depressed unit FACTORY MENU appears in the LCD window or
the display starts scrolling through different topics.
- Using
the MENU button scroll down to
the IP ADDRESS? topic and press the CHOICE button.
- The
blinking cursor indicates the current IP numeric value selected. Every time you press the CHOICE button the numeric value will change.
- Using
the TEST button will move you
over to the next numeric value.
- Continue
steps 4 & 5 to program the desired IP address value.
- At
the end the display will show EXIT AND SAVE. Press the TEST button to
save the IP address you just entered.
FGL
NETWORKING COMMANDS:
ETHERNET MODE COMMAND - <eth#>
This command sets the Ethernet mode for the printer and is
permanently stored in flash. This can also be set using the 'Factory Menu'. The values can
range as shown below:
0 - NO - Ethernet Interface
disabled
1 - YES - Ethernet Interface
enabled (uses static IP address).
2 - Ethernet DIAGNOSTIC
Mode - (prints all packets
transmitted or received by the printer).
3 - Ethernet Diagnostic VALID
PACKET Mode - (prints only valid
packets transmitted or received by the printer).
4 - DHCP ENABLED (automatically attempts to get an IP
address from Local Server).
5 - DHCP/SUB/GATE (automatically attempts to get an IP
address/Subnet Mask/Gateway from Local Server).
6 - DHCP/NR* (automatically attempts to get an IP address
from Local Server and then register the name with the local NetBIOS name server
– usually the WINS Server).
7 - DHCP/SUB/GATE/NR* (automatically attempts to get an IP
address/Subnet Mask/Gateway from Local Server and then register the name with
the local NetBIOS name server – usually the WINS Server
).
Notes: Ethernet Diagnostic Modes should only be
used after consulting with Boca Systems.
The DHCP enabled function will cause the printer to
automatically attempt to retrieve a ‘permanent’ IP address from a Local Server
after powering on. If the server
does not assign a ‘permanent’ one, then it will allocate an address for a
limited period of time (lease time). If this is the case, the printer will automatically try and renew its
lease before it expires. If DHCP
is enabled, but no response is received from a Local Server in time, the
printer will revert back to its default IP. For convenience, the printer’s IP
address is now printed on the Test Ticket.
*New Feature (implemented November 2007 )
The Name Registration
option is only available with Dynamic (DHCP) addressing. The printer will attempt to register
the name as BOCA# where # stands for the serial number of the printer (ex.
BOCA123456). If the registration
is successful, you should be able to ping, print or access the Web Menu simply
by using the printer name instead of the actual IP address. For example, you
should be able to type BOCA123456 in a Web Browser and access the printer’s Web
Menu or ping it using ping BOCA123456.
Once the Subnet has been set either automatically or by the
customer it will remain set. It is up to the customer to reset it to 0.0.0.0 if
they do not want the printer to try and use the Gateway. For ex. if it
was set using the DHCP/SUB/GATE mode and then the Ethernet mode was changed to
DHCP the printer will get a dynamic IP address and still use the previous
Subnet and Gateway settings. The
Subnet can be cleared through the Control Panel Menu, the Web Menu or using the
<sub0> command below.
MEDIA ACCESS CONTROL NUMBER COMMAND - <MAC>
This command returns the
MAC number (Ethernet address) for the printer in the form ##.##.##.##.##.##. The MAC is used by
hardware devices on the network to communicate with each other. It is set at the factory and can’t be
changed by the user.
INTERNET PROTOCOL ADDRESS COMMAND - <IP>
This command returns the
IP address of the printer in the form ###.###.###.###. The IP address is used by applications
on ‘direct’ networks to
communicate with each other. The
default address is 10.0.0.192. This address can be changed by the user. See next command.
PERMANENT PROTOCOL ADDRESS COMMAND - <ip10.0.1.25>
This command permanently
changes the IP address of the printer and stores it in flash. The example above would change the
address to 10.0.1.25. The IP
address can also be changed using the ‘Factory or Web Menu’. The default address
is 10.0.0.192. Note: IP address
0.0.0.0 is reserved.
IDLE TIMEOUT COMMAND - <idt#>
This command permanently
stores the timeout value (#) in flash. The value (#) can range from 1-65535 seconds. The printer will reset the open connection after #
seconds of inactivity if another application is seeking to communicate with the
printer. In this case, a
reset (RST packet) will be sent to the open connection, and any previously
stored data will be flushed. The
default setting is 30 seconds.
This command permanently
stores the Retransmit Timeout value in flash. The value (#) can range from
1-65535 seconds. This command sets
the total timeout period for a network port connection to remain open if there
is a problem communicating between ports. Normally, after 2s, the Boca printer will retransmit data that has
failed to be acknowledged by the Host TCP. Then it will wait 4s, then 8s, etc. After a total of 300s, the Boca will
send a RST packet and terminate the connection. Any previously stored data will be flushed. The default setting is 300 seconds.
NEW FGL NETWORKING COMMANDS: Available in versions
FGL44B5 and above.
Previous
firmware versions did not allow you to assign a subnet mask or default
gateway. The printer would always
send packets directly to the destination host. This would work on all directly connected networks. This is referred to as a ‘direct
route’. Sometimes it is necessary
to run the printer on an indirectly connected network. It must send its responses through a
gateway in order to reach the destination host. Therefore, we have added the Subnet Mask and Default Gateway
commands to the printer. They can
also be set through the control panel and Web Menus.
DEFAULT GATEWAY MEDIA ACCESS CONTROL NUMBER COMMAND -
<DGM>
This command returns the MAC number (Ethernet address) for
the Default Gateway in the form ##.##.##.##.##.##. The MAC is used by
hardware devices on the network to communicate with each other. The Gateway MAC is obtained during
initialization (see Note under Permanent Subnet Mask command).
DEFAULT GATEWAY IP ADDRESS COMMAND - <DGW>
This command returns the
IP address of the Default Gateway in the form ###.###.###.###.
The Gateway IP number is used by applications on ‘indirect’ networks to
communicate with each other. The
default address is 10.0.0.192. This address can be changed by the user (see below).
PERMANENT DEFAULT GATEWAY IP ADDRESS COMMAND -
<dgw10.0.1.254>
Note: This function should only be used by
an experienced user.
This command permanently changes the IP address of the
default gateway and stores it in flash. The example above would change the address to 10.0.1.254. The Gateway Address can also be changed
using the ‘Factory or Web Menu’. The default address is 10.0.0.192. Note: the subnet value must be non-zero
in order for the Gateway Address to be valid (see below).
SUBNET MASK COMMAND - <SUB>
This command returns the Subnet Mask for the network in the
form ###.###.###.###. The Subnet Mask is used by the printer to
determine if the destination is on a connected network (direct
route). If not, it is sent to the
Gateway Address. The default mask
is 0 (0.0.0.0). This
value can be changed by the user. Do not change the Subnet Mask from zero unless you are using a
Gateway. See next command.
PERMANENT SUBNET MASK COMMAND - <sub#>
Note: This function should only be used by
an experienced user.
This command permanently changes the Subnet Mask for the
network and stores it in flash. The Subnet Mask can also be changed using the
‘Factory or Web Menu’. The default mask is 0 (0.0.0.0). This is a reserved value and is used by
the printer to indicate there is no subnet. Thus the printer will treat all packets as if they are on a
‘direct route’. If you want
packets sent to the Gateway Address you must assign one of the following
non-zero values (1-32):
0 0.0.0.0 (reserved) 17 255.255.128.0 (class C)
1 128.0.0.0 (class A) 18 255.255.192.0 “
2 192.0.0.0 “ 19 255.255.224.0 “
3 224.0.0.0 “ 20 255.255.240.0 “
4 240.0.0.0 “ 21 255.255.248.0 “
5 248.0.0.0 “ 22 255.255.252.0 “
6 252.0.0.0 “ 23 255.255.254.0 “
7 254.0.0.0 “ 24 255.255.255.0 “
8 255.0.0.0 “ 25 255.255.255.128
9 255.128.0.0 (class B) 26 255.255.255.192
10 255.192.0.0 “ 27 255.255.255.224
11 255.224.0.0 “ 28 255.255.255.240
12 255.240.0.0 “ 29 255.255.255.248
13 255.248.0.0 “ 30 255.255.255.252
14 255.252.0.0 “ 31 255.255.255.254 (unusable)
15 255.254.0.0 “ 32 255.255.255.255 (host-single address)
16 255.255.0.0 “
Note: If a Subnet Mask and Gateway Address have been
provided, the printer will attempt to obtain the Gateway’s MAC address (using
the ARP protocol) during initialization of the printer. If it is unable to establish
communication with the Gateway after a number of tries, it will treat the
Gateway as a ‘Dead Gateway’. In
this case, all packets meant for the Gateway will be silently discarded. If the Gateway’s MAC address is
obtained, then that ‘indirect route’ will be used for all off-network packets. The MAC address will be ‘persistent’
until the printer is reset or power cycled. Do not change the Subnet Mask from zero unless you are
using a Gateway.
ETHERNET PORT CONFIGURATION - <epc#> Available in versions
FGL44B28 and above.
Normally, the printer will auto-negotiate its port
configuration with the network. Some customers have asked for the ability to manually set the speed and
duplex settings of the Ethernet port. This command permanently stores the
selected port settings in flash. The values (#) can range as shown below:
0 - Auto-negotiate
1 - 100 Mbps/Full duplex
2 - 100 Mbps/Half duplex
3 - 10 Mbps/Full duplex
4 - 10 Mbps/Half duplex
Using the Ethernet Interface
You can configure the Ethernet interface to communicate with
your printer either directly across the network or as a shared device attached
to a specific computer. Below are
some of the options available in a Windows 2000 environment. Most of these should also be available
under Windows XP. Other
operating systems (like UNIX) should have similar capabilities to the ones
shown below.
NETWORK INTERFACES
.WINDOWS SOCKET API
The use of Windows Socket API calls allows the user
bi-directional communication across the network and full control of the
process. A sample freeware program
called Netcat works with the printer and can be used as is, modified or
referred to as a guideline for writing your own program.
.DOS COMMANDS
LPR and LPQ commands allow the user to talk directly to the
printer across the network.
LPR - prints
a file to any network device (BOCA printer) running an LPD server
lpr -SServer -PPrinter [-CClass] [-JJobname] [-O option] filename
Parameters
-SServer > Specifies the
name or IP address of the computer or the print device running LPD.
-PPrinter > Specifies the name of the
printer for the desired queue.
-CClass > Specifies the content of the banner page for the class.
-JJobname > Specifies the name of this job.
-O option > Indicates the type of file. The default is a text file. Use -Ol (lowercase 'L')
for a binary file (for example, PostScript).
filename > The
name of the file to be printed.
ex. lpr -S10.0.0.192 -Pboca p.txt Sends the
file p.txt to the printer with IP address 10.0.0.192
LPQ - requests
printer status
lpq -SServer -PPrinter [-l]
Parameters
-SServer > Specifies the name of the computer or print device running LPD.
-PPrinter > Specifies the name of the printer for the desired queue.
-l (Lowercase L) > Specifies
that a detailed status should be given.
Note: specifying the command without the lowercase L
returns a generic printer ok status message if the printer is not busy (see
below). However, the printer will
not accept the command if it is busy, so nothing is usually returned until the
printer is ready again.
ex. lpq -S10.0.0.192 -Pboca Normally returns a ‘Boca Systems lpd: no jobs queued on this port’
message (printer ok).
ex. lpq -S10.0.0.192 -Pboca -l Returns detailed status
for boca queue print job on printer with IP address 10.0.0.192. Note: this will include all of
the printer status bytes described in the ‘Printer Status Supplement’ in the
programming guide.
.Shared device
The printer may be installed as a shared device on a Network
Port using either an LPR port or a Standard TCP/IP port (See installation
instructions at the end of this document). As a shared device, it is possible to redirect one of the
LPT# ports to a network port allowing all of Boca's sample VB, VC, 'C' and
GWBasic programs to work across the network. Redirection is accomplished by using the MS-DOS command Net
Use. Choose a port name on your PC
that is not being used (such as LPT2:). The syntax of the command is:
Net Use LPT2: \\networkPCname\printersharename ex. Net Use LPT2: \\panther\tcpprint
At this point, any copy command issued to LPT2: on your PC
will be redirected across your network to the Boca Systems Inc. printer named
tcpprint attached to PC panther. Although the printer can be written to across the network by this
method, the data returned from the printer can't be read back. For further details on Net Use, refer
to your DOS manual or use Windows Help mode.
Ethernet
Trouble-shooting guide....
MAC conflicts:
You must make sure there are no
MAC address conflicts between multiple Boca Printers and any other devices on
your network. Though it should never be the case, there was once an instance
where two Boca Printers had the same MAC. The printer’s MAC address is based on its serial number. Changing the printer’s serial number
might cause a problem.
Packet loss:
Determine if you are losing
packets. To test for packet loss, ping the printer 1000 times. Use the ‘ping
–n 1000 –l 1472 printers IP address’ command. Let us know how many packets are lost.
We have found that if a customer is losing a lot of packets (more than 10) we
may be able to improve this by shortening the internal ribbon cable to the
Ethernet card. Note: the
–l 1472 parameter in the ping command tests the Maximum Transmission Unit
(MTU) of the network. It should be
able to handle IP datagrams up to 1472 bytes.
LPR vs RAW TCP:
If you are having a problem using
LPR mode make sure the 'byte counting enabled' option is set. Try running in
RAW TCP mode or vice versa.
Windows Driver vs Windows
Socket API:
Are you using a Windows Driver or
writing directly to the printer using Windows Socket API calls? Try both
approaches if possible and see if one is better than the other.
Printer Timeout issues:
Is the printer
timing out during the retransmission of a packet or in an idle state?
Try playing with the following commands to see if it improves performance. The commands are explained above.
IDLE TIMEOUT COMMAND - <idt#>
RETRANSMIT TIMEOUT COMMAND -
<rtt#>
Host Timeout issues:
Please refer to the following Microsoft Articles
for possible solutions.
‘How to Modify the TCP/IP Maximum Retransmission
Timeout’ - Article: 170359
‘TCP/IP Port Printing May Be Slow on Windows 2000’
- Article ID: 816627
‘TCP/IP and NBT configuration parameters for
Windows 2000 or Windows NT’ - Article ID: 120642
Problem printing large batches
of tickets:
Try changing your system so it does not
create a new print job for every ticket. In this case, the printer works better
and faster. Try to limit the
number of jobs opened and closed. You can also try sending a large batch of tickets in a series of smaller
batches. If possible, hook up an
HP Jetdirect Print Server to the printer (requires a parallel port) and see if
the problem still exists. If so, it is probably a Network issue on the client’s
end (likely a bandwidth, configuration, slow link or router problem).
Client Network Problems:
Several clients had problems initially but they turned out
to be networking issues on their end
(bandwidth problems, configuration
settings, etc). Make sure
everything is configured correctly on the Network.
Auto-Negotiate problem:
One client had an issue where his switches would not
auto-negotiate correctly with the printer. Try manually setting your switches to 100 Mbps, Full duplex.
Monitor traffic:
Are you able to monitor the
Ethernet traffic between the Host and printer? Can you determine if the printer
is not responding to a particular packet or is going busy? Is it losing
packets? Can you send us a copy of the packet traffic at the point it fails?
Installing a packet sniffer program would greatly
assist us in diagnosing this problem. It is recommended that you use the same
one we do so that the captured packet data can be analyzed here.
You can obtain a free packet sniffer called 'Ethereal'
from the following link- http://www.ethereal.com/distribution/win32/.
Important Note: On a switched network, in
order to see all the network traffic, both the Boca and computer should be
connected to a non-switched hub. Some switches have the ability to
replicate all traffic on all ports to a single port so that you can plug your
analyzer into that single port to sniff all traffic. See the section below
titled 'Capturing Packets' for more details.
1. Install Ethereal on the
same computer that the Boca was initially installed on.
2. Under 'capture' >
'options' select a buffer size necessary to capture all the packets that might
be sent during the test. This will vary depending on the network traffic, the
amount of tickets sent and what the problem is. If the problem is one where the
printer stops printing after a large amount of tickets are sent then we
recommend you set as large a buffer as possible.
3. Under 'capture' >
'options' select an interface (there are sometimes several to chose from). Then
start capturing.
4. Stop after a few seconds
and make sure you see packets being captured or else you must select a
different interface.
5. Restart capturing packets.
6. Send print jobs to the
printer.
7. After a problem develops,
stop the capture immediately. Note: If the problem is one where the printer
stops printing you should wait up to 5 minutes before stopping the capture.
This allows us to see if your system has stopped sending us data for some
reason.
8. Save the project under the
'file' tab.
9. Email file to us along
with a description of the events that happened during the capture session.
Include the appropriate IP addresses so we can identify the printer and server
packets.
Capturing Packets: (source
- http://www.ethereal.com/faq.html#q7.1)
Q 7.1: When I use
Ethereal to capture packets, why do I see only packets to and from my machine,
or not see all the traffic I'm expecting to see from or to the machine I'm
trying to monitor?
A: This might be because the interface on which you're
capturing is plugged into an Ethernet or Token Ring switch; on a switched
network, unicast traffic between two ports will not necessarily appear on other
ports - only broadcast and multicast traffic will be sent to all ports. Note that even if your machine is
plugged into a hub, the "hub" may be a switched hub, in which case
you're still on a switched network.
Note also that on the Linksys Web site, they say that their
auto-sensing hubs "broadcast the 10Mb packets to the port that operate at
10Mb only and broadcast the 100Mb packets to the ports that operate at 100Mb
only", which would indicate that if you sniff on a 10Mb port, you will not
see traffic coming sent to a 100Mb port, and vice versa. This problem
has also been reported for Netgear dual-speed hubs, and may exist for other
"auto-sensing" or "dual-speed" hubs.
Some switches have the ability to replicate all traffic on
all ports to a single port so that you can plug your analyzer into that single
port to sniff all traffic. You would have to check the documentation for the
switch to see if this is possible and, if so, to see how to do this. See the switch reference page on the Ethereal Wiki for information on
some switches. (Note that it's a Wiki, so you can update or fix that
information, or add additional information on those switches or information on
new switches, yourself.)
Note also that many firewall/NAT boxes have a switch built
into them; this includes many of the "cable/DSL router" boxes. If you
have a box of that sort, that has a switch with some number of Ethernet ports
into which you plug machines on your network, and another Ethernet port used to
connect to a cable or DSL modem, you can, at least, sniff traffic between the
machines on your network and the Internet by plugging the Ethernet port on the
router going to the modem, the Ethernet port on the modem, and the machine on
which you're running Ethereal into a hub (make sure it's not a switching hub,
and that, if it's a dual-speed hub, all three of those ports are running at the
same speed.
If your machine is not plugged into a switched
network or a dual-speed hub, or it is plugged into a switched network but the
port is set up to have all traffic replicated to it, the problem might be that
the network interface on which you're capturing doesn't support
"promiscuous" mode, or because your OS can't put the interface into
promiscuous mode. Normally, network interfaces supply to the host only:
· packets sent to one of
that host's link-layer addresses;
· broadcast packets;
· multicast packets sent
to a multicast address that the host has configured the interface to accept.
Most network interfaces can also be put in
"promiscuous" mode, in which they supply to the host all network
packets they see. Ethereal will try to put the interface on which it's
capturing into promiscuous mode unless the "Capture packets in promiscuous
mode" option is turned off in the "Capture Options" dialog box,
and Tethereal will try to put the interface on which it's capturing into
promiscuous mode unless the -p option was specified. However, some network
interfaces don't support promiscuous mode, and some OSes might not allow
interfaces to be put into promiscuous mode.
If the interface is not running in promiscuous mode, it
won't see any traffic that isn't intended to be seen by your machine. It will see broadcast packets, and multicast packets
sent to a multicast MAC address the interface is set up to receive.
You should ask the vendor of your network interface whether
it supports promiscuous mode. If it does, you should ask whoever supplied the
driver for the interface (the vendor, or the supplier of the OS you're running
on your machine) whether it supports promiscuous mode with that network
interface.
In the case of token ring interfaces, the drivers for some
of them, on Windows, may require you to enable promiscuous mode in order to
capture in promiscuous mode. See the Ethereal Wiki item
on Token Ring capturing for details.
In the case of wireless LAN interfaces, it appears that,
when those interfaces are promiscuously sniffing, they're running in a significantly
different mode from the mode that they run in when they're just acting as
network interfaces (to the extent that it would be a significant effor for
those drivers to support for promiscuously sniffing and acting as
regular network interfaces at the same time), so it may be that Windows drivers
for those interfaces don't support promiscuous mode.
Q 7.2: When I capture
with Ethereal, why can't I see any TCP packets other than packets to and from
my machine, even though another analyzer on the network sees those packets?
A: You're probably not seeing any packets other than
unicast packets to or from your machine, and broadcast and multicast packets; a
switch will normally send to a port only unicast traffic sent to the MAC
address for the interface on that port, and broadcast and multicast traffic -
it won't send to that port unicast traffic sent to a MAC address for some other
interface - and a network interface not in promiscuous mode will receive only
unicast traffic sent to the MAC address for that interface, broadcast traffic,
and multicast traffic sent to a multicast MAC address the interface is set up
to receive.
TCP doesn't use broadcast or multicast, so you will only see
your own TCP traffic, but UDP services may use broadcast or multicast so you'll
see some UDP traffic - however, this is not a problem with TCP traffic, it's a
problem with unicast traffic, as you also won't see all UDP traffic between
other machines.
I.e., this is probably the same question as this
earlier one; see the response to that question.
Q 7.3: Why am I only
seeing ARP packets when I try to capture traffic?
A: You're probably on a switched network, and running
Ethereal on a machine that's not sending traffic to the switch and not being
sent any traffic from other machines on the switch. ARP packets are often
broadcast packets, which are sent to all switch ports.
Q 7.4: Individual
tickets are printed in one to two seconds, but I occasionally have delays of up
to ten seconds between tickets. What’s happening?
A: You're probably sending flash commands on every ticket. Try eliminating all flash commands from
the ticket data.
Installation of port
monitor instructions:
Note: Please make sure you have either the HP
LaserJet llP Plus Print driver or the appropriate Boca FGL Print driver
installed before continuing with these instructions (see website for FGL
driver).
Installing a Standard
TCP/IP port using Raw protocol on Windows 2000
(preferred method).
1. Open the Control Panel through the Start Menu and open Printers.
2. Double click Add Printer.
3. Click Next.
4. Select Local printer, clear the Automatically
detect my printer check box, and then click Next.
5. Select Create a new
port.
6. Choose Standard TCP/IP Port from the "Type"
drop down menu. You may have to
scroll all the way down to the bottom.
7: Click Next.
8: Enter the IP address of the printer into the Printer
Name or IP Address field (ex. 10.0.0.192).
The Port Name is filled in
automatically. You may change it
if you wish.
9: Enter the name you wish to call the printer in the Port
Name field (ex. BOCA).
10. Click Next and wait for a bit.
11. Set Device Type to Custom and click Settings.
12. Set Protocol to Raw.
13. Make sure Port Number is
set to 9100.
14. Leave SNMP Status
Enabled unchecked.
15. Click OK, then
click Next, then click Finish and wait a
bit.
16. Choose Boca->
appropriate dpi version and click Next. Choose HP -> HP laserJet llP Plus if
using a PCL4 BOCA printer.
17. If it tells you the driver
is already installed, keep existing driver and just click Next.
18. Enter the name you wish to
call the printer in the Printer Name field (ex. tcpprinter).
Decide if you want it as your default
printer.
19. Click Next.
20. Decide if you want to share the printer - if so, give it a
'share' name (ex. tcpprint).
21. Click Next.
22. Give it a location/comment
description if desired.
23. Click Next.
24. Select No or Yes for Do you want to print a test page?
25. Click Next and then click Finish.
26. If you elected to print a
test page it should print after clicking Finish.
Note: The Standard TCP/IP port
(shown above) is the only method we support which allows for detailed status to
be reported back to the Host via the bi-directional Raw TCP protocol.
Installing an LPR port on
Windows 2000.
1. To open Printers, click
Start, point to Settings, and then click Printers.
2. Double-click Add Printer,
and then click Next.
3. Click Local printer,
clear the Automatically detect my printer check box, and then click Next.
4. Click Create a new port,
and then click LPR Port. If
LPR Port is not available, click Cancel to stop the wizard. To add the LPR port, you need to
install Print Services for Unix.
5. Click Next,
and then provide the following information:
- In Name or address of server providing LPD, type the
DNS name or Internet Protocol (IP) address of the host for the printer you are
adding. You can also enter the DNS
name or IP address of the direct-connect TCP/IP printing device (the boca
printer) or the UNIX computer to which the printing device is connected (ex.
10.0.0.192). The DNS name can be the name specified for the host in the Hosts
file.
- In Name of printer or print queue on that server, type the name of the printer as it is identified by the Host,
which is either the direct-connect printer itself or the UNIX computer.
6. Choose Boca->
appropriate dpi version and click Next. Choose HP -> HP laserJet llP
Plus if using a PCL4 BOCA printer.
7. If it tells you the driver
is already installed, keep existing driver and just click Next.
8. Enter the name you wish to
call the printer in the Printer Name field (ex. lprprinter). Decide if you want it as your default
printer.
9. Click Next.
10 Decide if you want to share
the printer - if so, give it a 'share' name (ex. lprprint).
11. Click Next.
12. Give it a location/comment
description if desired.
13. Click Next.
14. Select No or Yes for Do you want to print a test page?
15. Click Next and then click Finish.
16. If you elected to print a
test page it should print after clicking Finish.
Notes:
.The LPR port is best suited to servers that need to
communicate with host computers such as UNIX or VAX machines by way of RFC
1179.
.For computers that need to submit print jobs to host
computers, the standard TCP/IP port (see above) should be used in most
cases.
.The LPR port only allows limited printer status to be
reported to the Host. A generic
error condition is reported when something goes wrong like a paper jam or paper
out.
Installing a Standard
TCP/IP port using simplified LPR protocol on Windows 2000.
1. Open the Control Panel through the Start Menu and open Printers.
2. Double click Add Printer.
3. Click Next.
4. Select Local printer, clear the Automatically
detect my printer check box, and then click
Next.
5. Select Create a new
port.
6. Choose Standard TCP/IP Port from the
"Type" drop down menu. You may have to scroll all
the way
down to the bottom.
7: Click Next.
8: Enter the IP address of the printer into the Printer
Name or IP Address field (ex. 10.0.0.192).
The Port Name is filled in
automatically. You may change it
if you wish.
9: Enter the name you wish to call the printer in the Port
Name field (ex. BOCA).
10. Click Next and wait for a bit.
11. Set Device Type to Custom and click Settings.
12. Set Protocol to LPR.
13. Enter the name you wish to
call the printer in the Queue Name field.
14. Check the LPR Byte
Counting Enabled check box.
15. Leave SNMP Status
Enabled unchecked.
16. Click OK, then
click Next, then click Finish and wait a
bit.
17. Choose Boca->
appropriate dpi version and click Next. Choose HP -> HP laserJet llP
Plus if using a PCL4 BOCA printer.
18. If it tells you the driver
is already installed, keep existing driver and just click Next.
19. Enter the name you wish to
call the printer in the Printer Name field (ex. lprprinter).
Decide if you want it as your default
printer.
20. Click Next.
21. Decide if you want to
share the printer - if so, give it a 'share' name (ex. lprprint).
22. Click Next.
23. Give it a location/comment
description if desired.
24. Click Next.
25. Select No or Yes for Do you want to print a test page?
26. Click Next and then click Finish.
27. If you elected to print a
test page it should print after clicking Finish.
Notes:
The simplified LPR
protocol differs from an RFC 1179 compliant LPR port in that it only supports
the printer implementations of LPR. A machine running an LPD service (like a UNIX box) cannot be designated
as the destination. Only LPD
capable printers can be the destination for print jobs. The simplified LPR protocol can use
non-RFC source port addresses (other than 721-731). Simplified LPR also allows for disabling of byte
counting which is always on with an RFC-compliant LPR port. |