HOWTO Ethereal Wireshark Trace en
HOWTO Ethereal Wireshark Trace en
Requirements
The tracing in Ethereal / Wireshark format is implemented in all funkwerk R-Series (e.g.
R232b / R3000), TR-Series (e.g. TR200) and W-Series (e.g. W1002) starting with software
release 7.5. On the client side you can use either Windows or Linux platform for starting
the trace.
Windows platform:
For tracing with Windows hosts you have to install the Brickware software package with
minimum version 7.5
Linux platform:
For tracing with Linux hosts you have to download “bricktrace-linux” binary from download
website or FTP-server
1.) Installation
1a.) Windows platform
You just have to install the DIME-Tools packets for the tracing.
If necessary, update your funkwerk device with a software version 7.5 or higher.
The use of the linux version has two advantages in comparison to the windows version:
Realtime Trace
The output of the bricktrace-linux program can be directly send to ethereal. This means
you can see the traced packets in realtime. With the windows version you first have to
finish the trace and open the pcap trace files afterwards.
Prefilter possibility
The output of the bricktrace-linux can be filtered directly from the program itself. This is
e.g. an advantage if the trace-session to the funkwerk device is running over a slow link,
but a faster link should be traced (e.g. tracing a DSL connection over a ISDN management
link).
You can see the usage of the bricktrace-linux program with all its options with
“bricktrace-linux -?”.
user@linux:~/bricktrace-linux> bricktrace-linux -?
Usage:
bricktrace-linux [opts] <routerip> [<channel> <unit> <slot> or <ifindex>]
-h hexadecimal output (-! for full length)
-2 layer 2 output
-3 layer 3 output
-a asynchronous HDLC (B-Channel only)
-e ETS300075 (EuroFileTransfer) output (B-channel only)
-F FAX (B-Channel only)
-A FAX + AT Commands (B-Channel only)
-D delta time
-p PPP (B-Channel only)
-f Frame Relay (B-Channel only)
-i IP output
-N Novell(c) IPX output
-t ascii text output (B-Channel only)
-x raw dump mode
-X asynchronous PPP over X.75
-T <tei> set tei filter (D-Channel only)
-c <cref> set callref filter (D-Channel only)
-r <cnt> capture only cnt bytes per paket
-v increase debug verbose level
-V 1..3 trace protocol version (default: 3)
-P<port> specify trace tcp port (default: 7000)
-I ipsrc:ipdst:proto:srcport:dstport IPsession filter
-B ip1:ip2:proto:port1:port2 bidirect IPsession filter
-o OR for LAN filter
--src=<addr> LAN filter for source MAC address
--dst=<addr> LAN filter for destination MAC address
--llc LAN filter for LLC packets
--help extended help (environ vars & filter)
--vpi=<vci> VPI for ADSL connections
--vci=<vpi> VCI for ADSL connections
--ethereal start ethereal (implies --pcap-pipe)
--pcap-pipe write data in pcap-format into named pipe
--pcap-file write data in pcap-format into file
--ofile=<fname> out filename (pipe/file)
--pwd=<passwd> remote admin-password
HOWTO - Packet capturing (Tracing) in Ethereal/Wireshark Format – Page 6 of 9
<routerip> trace host (router's name or IP-address)
<channel> 0 = D-Channel or no ISDN, 1..31 = Bx-Channel
<unit> 0..15
<slot> 0..9
<ifindex> interface index (instead of chan/unit/slot)
if no chan/unit/slot or ifindex given: list all interfaces
Examples:
bricktrace-linux router : list all interfaces
bricktrace-linux router 0 1 2 : D-Channel(0) of ISDN Slot 2,
Unit 1
bricktrace-linux router 1000 : LAN Interface 1000 (Slot 1)
bricktrace-linux router 100001 : virtual IPsec interface 100001
bricktrace-linux --ethereal router 1000 : write PCAP & start ethereal
bricktrace-linux --pcap-file router 1000 : write PCAP file
user@linux:~/bricktrace-linux>
For finding out the traceable interfaces of the device, use the command without “ifindex”.
For resolving the interface index values (Ifc) use the “ifstat” command on the telnet
console to the router (not on the linux machine!)
r232bw:> ifstat
Index Descr Type Mtu Speed St Ipkts Ies Opkts Oes PhyAddr/ChgTime
000000 REFUSE othr 8192 0 up 0 0 0 0 0 00:00:00
000001 LOCAL othr 8192 0 up 0 0 0 0 0 00:00:00
000002 IGNORE othr 8192 0 up 0 0 0 0 0 00:00:00
001000 en1-0 eth 1500 100M up 1962248 0 3015 0 00:a0:f9:09:7d:f8
001001 en1-0-llc eth 1496 100M up 186 0 0 0 00:a0:f9:09:7d:f8
001002 en1-0-snap eth 1492 100M up 139 0 0 0 00:a0:f9:09:7d:f8
005000 en5-0 eth 1500 100M up 501 0 484 0 00:a0:f9:09:7d:f8
005001 en5-0-llc eth 1496 100M up 0 0 0 0 00:a0:f9:09:7d:f8
005002 en5-0-snap eth 1492 100M up 0 0 0 0 00:a0:f9:09:7d:f8
050000 ethoa50-0 eth 1500 10M dn 0 0 0 0 00:a0:f9:89:7d:f8
050001 ethoa50-0-ll eth 1496 10M dn 0 0 0 0 00:a0:f9:89:7d:f8
050002 ethoa50-0-sn eth 1492 10M dn 0 0 0 0 00:a0:f9:89:7d:f8
200000 vss1-0 eth 1500 54M dn 0 0 0 0 00:00:00:00:00:00
200001 vss1-0-llc eth 1496 54M dn 0 0 0 0 00:00:00:00:00:00
200002 vss1-0-snap eth 1492 54M dn 0 0 0 0 00:00:00:00:00:00
total: 15
r232bw:>
030095.193 R DATA[0060]
0000: ff ff ff ff ff ff 00 03 47 4d c5 45 08 06 00 01 ........GM.E....
0010: 08 00 06 04 00 01 00 03 47 4d c5 45 c0 a8 01 64 ........GM.E...d
0020: 00 00 00 00 00 00 ......
Arp Request: Who is 192.168.1.1 ? Tell: 192.168.1.100
030095.193 X DATA[0042]
0000: 00 03 47 4d c5 45 00 a0 f9 09 7d f8 08 06 00 01 ..GM.E....}.....
0010: 08 00 06 04 00 02 00 a0 f9 09 7d f8 c0 a8 01 01 ..........}.....
0020: 00 03 47 4d c5 45 ..GM.E
Arp Reply: 192.168.1.1 is 00:a0:f9:09:7d:f8
030095.193 R DATA[0098]
0000: 00 a0 f9 09 7d f8 00 03 47 4d c5 45 08 00 45 00 ....}...GM.E..E.
0010: 00 54 09 51 40 00 40 01 ad a2 c0 a8 01 64 c0 a8 .T.Q@.@......d..
0020: 01 01 08 00 d0 da ......
IP-Packet from 192.168.1.100 to 192.168.1.1 protocol ICMP
ICMP-Message , type echo request
030095.193 X DATA[0098]
0000: 00 03 47 4d c5 45 00 a0 f9 09 7d f8 08 00 45 00 ..GM.E....}...E.
0010: 00 54 0b 18 40 00 3f 01 ac db c0 a8 01 01 c0 a8 .T..@.?.........
0020: 01 64 00 00 d8 da .d....
IP-Packet from 192.168.1.1 to 192.168.1.100 protocol ICMP
ICMP-Message , type echo reply
user@linux:~>
For filtering the trace-output use the options “-I” and “-B”.
Example: Tracing only telnet packets (TCP (IP protocol 6), Port 23)
For sending the trace to a ethereal/wireshark readable file, use the options “—pcap-file”
and “-ofile=<filename>”
bricktrace-linux --pwd funkwerk --pcap-file --ofile=testtrace.pcap 192.168.1.1
1000
For sending the trace in realtime to ethereal/wireshark, use the options “—ethereal”. All
output is piped to ethereal.