Firewall Filter Match Conditions and Actions for EX-series Switches
Each term in a firewall filter consists of match conditions and an action. Match conditions are the values or fields that a packet must contain. You can define multiple, single, or no match conditions. If no match conditions are specified for the term, the packet is accepted by default. The action is the action that the switch takes if a packet matches the match conditions for the specific term. Allowed actions are accept a packet or discard a packet. In addition, you can specify action modifiers to count, mirror, rate limit, and classify packets.
For each firewall filter, you define the terms that specify the filtering criteria (match conditions) to apply to packets and the action for the switch to take if a match occurs.
Table 1 describes the match conditions you can specify when configuring a firewall filter. The string that defines a match condition is called a match statement. All match conditions are applicable to IPv4 traffic.
Table 1: Supported Match Conditions for Firewall Filters on EX-series Switches
Match Condition |
Description |
Direction/Interface |
|---|---|---|
destination-address |
IP destination address field, which is the address of the final destination node. |
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
destination-mac-address mac-address |
Destination media access control (MAC) address of the packet. |
Ingress ports, VLANs, and router interfaces. Egress VLANs. Note: Ingress and egress router interfaces are not supported on EX 8200 series. |
destination-port number |
TCP or User Datagram Protocol (UDP) destination port field. Typically, you specify this match in conjunction with the protocol match statement to determine which protocol is used on the port. In place of the numeric value, you can specify one of the following text synonyms (the port numbers are also listed): afs (1483), bgp (179), biff (512), bootpc (68), bootps (67), cmd (514), cvspserver (2401), dhcp (67), domain (53), eklogin (2105), ekshell (2106), exec (512), finger (79), ftp (21), ftp-data (20), |
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
http (80), https (443), ident (113), imap (143), kerberos-sec (88), klogin (543), kpasswd (761), krb-prop (754), krbupdate (760), kshell (544), ldap (389), login (513), mobileip-agent (434), mobilip-mn (435), msdp (639), netbios-dgm (138), netbios-ns (137), netbios-ssn (139), nfsd (2049), nntp (119), ntalk (518), ntp (123), pop3 (110), pptp (1723), printer (515), radacct (1813),radius (1812), rip (520), rkinit (2108), smtp (25), snmp (161), snmptrap (162), snpp (444), socks (1080), ssh (22), sunrpc (111), syslog (514), tacacs-ds (65), talk (517), telnet (23), tftp (69), timed (525), who (513), xdmcp (177), zephyr-clt (2103), zephyr-hm (2104) |
||
destination-prefix-list prefix-list |
IP destination prefix list field. You can define a list of IP address prefixes under a prefix-list alias for frequent use. You make this definition at the [edit policy-options] hierarchy level. Note: destination-prefix-list is not supported on EX 8200 series switches. |
Ingress ports, VLANs, and router interfaces. Egress ports, VLANs and router interfaces. |
dot1q-tag number |
The tag field in the ethernet header. The tag values can be 1–4095. |
Ingress ports and VLANs. Egress VLANs. Note: Egress VLANs are not supported on EX 8200 series. |
dot1q-user-priority number |
User-priority field of the tagged Ethernet packet. User-priority values can be 0–7. In place of the numeric value, you can specify one of the following text synonyms (the field values are also listed):
|
Ingress ports and VLANs. Egress VLANs. |
dscp number |
Differentiated Services code point (DSCP). The DiffServ protocol uses the type-of-service (ToS) byte in the IP header. The most significant six bits of this byte form the DSCP. You can specify DSCP in hexadecimal, binary, or decimal form. In place of the numeric value, you can specify one of the following text synonyms (the field values are also listed):
|
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
ether-type [ipv4 | arp | mpls | dot1q | value] |
Ethernet type field of a packet. The EtherType value specifies what protocol is being transported in the Ethernet frame. In place of the numeric value, you can specify one of the following text synonyms:
|
Ingress ports and VLANs. Egress VLANs. Note: Egress ports, VLANs, and router interfaces are not supported on EX 8200 series. |
fragment-flags [ |
IP fragmentation flags. |
fragment-flags [is-fragment] supported for: Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. fragment-flags [more-fragment | dont-fragment] supported for: Ingress ports, VLANs, and router interfaces. |
icmp-code number |
ICMP code field. This value or keyword provides more specific information than icmp-type. Because the value’s meaning depends upon the associated icmp-type, you must specify icmp-type along with icmp-code. In place of the numeric value, you can specify one of the following text synonyms (the field values are also listed). The keywords are grouped by the ICMP type with which they are associated:
|
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
icmp-type number |
ICMP packet type field. Typically, you specify this match in conjunction with the protocol match statement to determine which protocol is being used on the port. In place of the numeric value, you can specify one of the following text synonyms (the field values are also listed): echo-reply (0), echo-request (8), info-reply (16), info-request (15), mask-request (17), mask-reply (18), parameter-problem (12), redirect (5), router-advertisement (9), router-solicit (10), source-quench (4), time-exceeded (11), timestamp (13), timestamp-reply (14), unreachable (3) |
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
interface interface-name |
Interface on which the packet is received. You can specify the wildcard character (*) as part of an interface name. Note: An interface from which a packet is sent cannot be used as a match condition. |
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
ip-options |
Presence of the options field in the IP header. Note: ip-options is not supported on EX 8200 series switches. |
Ingress ports, VLANs, and router interfaces. |
precedence precedence |
IP precedence. In place of the numeric value, you can specify one of the following text synonyms (the field values are also listed):
|
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
protocol list of protocols |
IPv4 protocol value. In place of the numeric value, you can specify one of the following text synonyms: egp (8), esp (50), gre (47), icmp (1), igmp (2), ipip (4), ospf (89), pim (103), rsvp (46), tcp (6), udp (17) |
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
source-address |
IP source address field, which is the address of the source node sending the packet. |
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
source-mac-address mac-address |
Source MAC address. |
Ingress ports and VLANs. Egress VLANs. |
source-port number |
TCP or UDP source-port field. Typically, you specify this match in conjunction with the protocol match statement to determine which protocol is being used on the port. In place of the numeric field, you can specify one of the text synonyms listed under destination-port. |
Ingress ports, VLANs, and router interfaces. Egress VLANs and router interfaces. |
source-prefix-list prefix-list |
IP source prefix list field. You can define a list of IP address prefixes under a prefix-list alias for frequent use. You make this definition at the [edit policy-options] hierarchy level. Note: source-prefix-list is not supported on EX 8200 series switches |
Ingress ports, VLANs, and router interfaces. Egress ports, VLANs and router interfaces. |
tcp-established |
TCP packets of an established TCP connection. This condition matches packets other than the first packet of a connection. tcp-established is a synonym for the bit names ""(ack | rst)". tcp-established does not implicitly check that the protocol is TCP. To do so, specify the protocol tcp match condition. Note: tcp-established is not supported on EX 8200 series switches. |
Ingress ports, VLANs, and router interfaces. |
tcp-flags [flags tcp-initial] |
One or more TCP flags:
To specify multiple flags, use logical operators. Note: tcp-flags is not supported on egress firewall filters. |
Ingress ports, VLANs, and router interfaces. |
tcp-initial |
Matches the first TCP packet of a connection. tcp-initial is a synonym for the bit names ""(syn & !ack)". tcp-initial does not implicitly check that the protocol is TCP. To do so, specify the protocol tcp match condition. |
Ingress ports, VLANs, and router interfaces. |
ttl value |
TTL type to match. The value range is 1 through 255. |
Ingress router interfaces. |
vlan [vlan-name | vlan-id] |
The VLAN that is associated with the packet. |
Ingress ports and VLANs. Egress VLANs. |
Some of the numeric range and bit-field match conditions allow you to specify a text synonym. For a list of all the synonyms for a match condition, do any of the following:
- If you are using the J-Web Configuration page, select the synonym from the appropriate list.
- If you are using the CLI, type a question mark (?) after the from statement.
To specify the bit-field value to match, you must enclose the values in quotation marks (" "). For example, a match occurs if the RST bit in the TCP flags field is set:
For information about logical operators and how to use bit-field logical operations to create expressions that are evaluated for matches, see Understanding Firewall Filter Match Conditions.
When you define one or more terms that specify the filtering criteria, you also define the action to take if the packet matches all criteria. Table 2 shows the actions that you can specify in a term.
Table 2: Actions for Firewall Filters
In addition to the actions, you can specify action modifiers. Table 3 shows the action modifers that you can specify in a term.
Table 3: Action Modifiers for Firewall Filters
