Even simple traces can quickly generate large amounts of text. As a solution to this, LANCOM has developed a filter that uses a full-text search to reduce the trace dipslay to the relevant information.

The following trace is an example. It shows a simple IP router trace for a device with three Internet connections and sending pings to different targets. All of the packets processed by the LANCOM IP router are displayed:
      root@PM1751:/
      > trace # ip-router

      IP-Router ON

      root@PM1751:/
      >

      [IP-Router] 2010/12/20 17:11:06,430
      IP-Router Rx (LAN-1, INTRANET3, RtgTag: 3):
      DstIP: 4.4.4.1, SrcIP: 192.168.3.100, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0015, seq: 0x1cde
      Route: WAN Tx (INTERNET3)

      [IP-Router] 2010/12/20 17:11:06,430
      IP-Router Rx (LAN-1, INTRANET1, RtgTag: 1):
      DstIP: 11.11.11.1, SrcIP: 192.168.1.100, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0016, seq: 0x1ccf
      Route: WAN Tx (INTERNET1)

      [IP-Router] 2010/12/20 17:11:06,430
      IP-Router Rx (INTERNET1, RtgTag: 1):
      DstIP: 192.168.1.100, SrcIP: 11.11.11.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo reply, id: 0x0016, seq: 0x1ccf
      Route: LAN-1 Tx (INTRANET1):

      [IP-Router] 2010/12/20 17:11:06,430
      IP-Router Rx (INTERNET3, RtgTag: 3):
      DstIP: 192.168.3.100, SrcIP: 4.4.4.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo reply, id: 0x0015, seq: 0x1cde
      Route: LAN-1 Tx (INTRANET3):

      [IP-Router] 2010/12/20 17:11:06,600
      IP-Router Rx (LAN-1, INTRANET2, RtgTag: 2):
      DstIP: 3.3.3.1, SrcIP: 192.168.2.100, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0014, seq: 0x1cea
      Route: WAN Tx (INTERNET2)

      [IP-Router] 2010/12/20 17:11:06,600
      IP-Router Rx (INTERNET2, RtgTag: 2):
      DstIP: 192.168.2.100, SrcIP: 3.3.3.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo reply, id: 0x0014, seq: 0x1cea
      Route: LAN-1 Tx (INTRANET2):

      [IP-Router] 2010/12/20 17:11:07,430
      IP-Router Rx (LAN-1, INTRANET1, RtgTag: 1):
      DstIP: 11.11.11.1, SrcIP: 192.168.1.100, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0016, seq: 0x1cd0
      Route: WAN Tx (INTERNET1)

      [IP-Router] 2010/12/20 17:11:07,430
      IP-Router Rx (LAN-1, INTRANET3, RtgTag: 3):
      DstIP: 4.4.4.1, SrcIP: 192.168.3.100, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0015, seq: 0x1cdf
      Route: WAN Tx (INTERNET3)

      [IP-Router] 2010/12/20 17:11:07,430
      IP-Router Rx (INTERNET1, RtgTag: 1):
      DstIP: 192.168.1.100, SrcIP: 11.11.11.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo reply, id: 0x0016, seq: 0x1cd0
      Route: LAN-1 Tx (INTRANET1):

      [IP-Router] 2010/12/20 17:11:07,430
      IP-Router Rx (INTERNET3, RtgTag: 3):
      DstIP: 192.168.3.100, SrcIP: 4.4.4.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo reply, id: 0x0015, seq: 0x1cdf
      Route: LAN-1 Tx (INTRANET3):

      [IP-Router] 2010/12/20 17:11:07,600
      IP-Router Rx (LAN-1, INTRANET2, RtgTag: 2):
      DstIP: 3.3.3.1, SrcIP: 192.168.2.100, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0014, seq: 0x1ceb
      Route: WAN Tx (INTERNET2)

      [IP-Router] 2010/12/20 17:11:07,600
      IP-Router Rx (INTERNET2, RtgTag: 2):
      DstIP: 192.168.2.100, SrcIP: 3.3.3.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo reply, id: 0x0014, seq: 0x1ceb
      Route: LAN-1 Tx (INTRANET2):



This trace was collected in just two seconds and the amount of data is already quite high. To simply things a bit, the next trace is executed with a filter criterion for the remote site.

For this purpose, an @ is placed after the normal trace command to indicate that filter criteria follow. Filter criteria are not case sensitive, and the only records to be displayed are those that contain the criterion.

In the following example, the remote site INTERNET1 is filtered:
      root@PM1751:/
      > trace # ip-router @ INTERNET1

      IP-Router ON @ INTERNET1

      [IP-Router] 2010/12/20 17:11:50,430
      IP-Router Rx (LAN-1, INTRANET1, RtgTag: 1):
      DstIP: 11.11.11.1, SrcIP: 192.168.1.100, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0016, seq: 0x1cfb
      Route: WAN Tx (INTERNET1)

      [IP-Router] 2010/12/20 17:11:50,430
      IP-Router Rx (INTERNET1, RtgTag: 1):
      DstIP: 192.168.1.100, SrcIP: 11.11.11.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo reply, id: 0x0016, seq: 0x1cfb
      Route: LAN-1 Tx (INTRANET1):

      [IP-Router] 2010/12/20 17:11:51,430
      IP-Router Rx (LAN-1, INTRANET1, RtgTag: 1):
      DstIP: 11.11.11.1, SrcIP: 192.168.1.100, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0016, seq: 0x1cfc
      Route: WAN Tx (INTERNET1)

      [IP-Router] 2010/12/20 17:11:51,430
      IP-Router Rx (INTERNET1, RtgTag: 1):
      DstIP: 192.168.1.100, SrcIP: 11.11.11.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo reply, id: 0x0016, seq: 0x1cfc
      Route: LAN-1 Tx (INTRANET1):


Again, the time frame of the trace is about two seconds, but the amount of data has already been reduced significantly. The only data to be displayed is that relating to remote site INTERNET1. However, further filter criteria can also be specified simply by placing a space between the first and second criteria.

As well as a space symbol, the symbols "+" and "-" can also be used as operators. With a "+" both criteria must be met; with a "-" the criterion must not be fulfilled; a space means that one or the other of the associated criteria must be fulfilled.

The option to use strings containing operators as a filter is implemented by quotation marks:
      root@PM1751:/
      > trace # ip-router @ INTERNET1 +"echo request"

      IP-Router ON @ INTERNET1 +"echo request"

      [IP-Router] 2010/12/20 17:12:06,430
      IP-Router Rx (INTERNET1, RtgTag: 1):
      DstIP: 192.168.1.100, SrcIP: 11.11.11.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0016, seq: 0x1d0b
      Route: LAN-1 Tx (INTRANET1):

      [IP-Router] 2010/12/20 17:12:07,430
      IP-Router Rx (INTERNET1, RtgTag: 1):
      DstIP: 192.168.1.100, SrcIP: 11.11.11.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo request, id: 0x0016, seq: 0x1d0c
      Route: LAN-1 Tx (INTRANET1):



Now the only trace records to be displayed are those containing the remote site INTERNET1 and also "echo request". The result is a simplified view that displays only the responses to pings from the associated remote site.

It is also possible to use multiple traces simultaneously and to filter by different criteria. For example, it is possible to start an an Ethernet trace in addition to the IP router trace to display the packet associated with the ping on the Ethernet:
      root@PM1751:/
      > trace # ip-router @ INTERNET1 +"echo reply"

      IP-Router ON @ INTERNET1 +"echo reply"

      root@PM1751:/
      > trace # eth @ ICMP +“echo reply”

      Ethernet ON @ icmp +"echo reply"

      [IP-Router] 2010/12/21 14:17:21,000
      IP-Router Rx (INTERNET1, RtgTag: 1):
      DstIP: 192.168.1.100, SrcIP: 11.11.11.1, Len: 84, DSCP/TOS: 0x00
      Prot.: ICMP (1), echo reply, id: 0x0002, seq: 0x2654
      Route: LAN-1 Tx (INTRANET1):

      [Ethernet] 2010/12/21 14:17:21,000
      Sent 98 byte Ethernet packet via LAN-1:
      HW Switch Port : ETH-1
      -->IEEE 802.3 Header
      Dest : 00:a0:57:12:a9:21 (LANCOM 12:a9:21)
      Source : 00:a0:57:12:f7:81 (LANCOM 12:f7:81)
      Type : IPv4
      -->IPv4 Header
      Version : 4
      Header Length : 20
      Type of service : (0x00) Precedence 0
      Total length : 84
      ID : 18080
      Fragment : Offset 0
      TTL : 59
      Protocol : ICMP
      Checksum : 24817 (OK)
      Src Address : 11.11.11.1
      Dest Address : 192.168.1.100
      -->ICMP Header
      Msg : echo reply
      Checksum : 18796 (OK)
      Body : 00 00 00 02 00 00 26 54 ......&T
      7e c9 6d 8c 00 00 00 00 ~.m.....
      00 01 02 03 04 05 06 07 ........
      08 09 0a 0b 0c 0d 0e 0f ........
      10 11 12 13 14 15 16 17 ........
      18 19 1a 1b 1c 1d 1e 1f ........
      20 21 22 23 24 25 26 27 !"#$%&'


This procedure makes it is possible to identify problems in traces that could easily be overlooked without filtering, or which would be very difficult to find in a configuration by inspection alone.