mirror of
https://github.com/vyos/vyos-documentation.git
synced 2025-10-26 08:41:46 +01:00
567 lines
23 KiB
ReStructuredText
567 lines
23 KiB
ReStructuredText
:lastproofread: 2024-08-05
|
|
|
|
.. _firewall-configuration:
|
|
|
|
#############################
|
|
Bridge Firewall Configuration
|
|
#############################
|
|
|
|
********
|
|
Overview
|
|
********
|
|
|
|
In this section there's useful information on all firewall configuration that
|
|
can be done regarding bridges, and appropriate op-mode commands.
|
|
Configuration commands covered in this section:
|
|
|
|
.. cfgcmd:: set firewall bridge ...
|
|
|
|
From the main structure defined in :doc:`Firewall Overview</configuration/firewall/index>`
|
|
in this section you can find detailed information only for the next part
|
|
of the general structure:
|
|
|
|
.. code-block:: none
|
|
|
|
- set firewall
|
|
* bridge
|
|
- forward
|
|
+ filter
|
|
- input
|
|
+ filter
|
|
- output
|
|
+ filter
|
|
- prerouting
|
|
+ filter
|
|
- name
|
|
+ custom_name
|
|
|
|
Traffic which is received by the router on an interface which is member of a
|
|
bridge is processed on the **Bridge Layer**. Before the bridge decision is
|
|
made, all packets are analyzed at **Prerouting**. First filters can be applied
|
|
here, and also rules for ignoring connection tracking system can be configured.
|
|
The relevant configuration that acts in **prerouting** is:
|
|
|
|
* ``set firewall bridge prerouting filter ...``.
|
|
|
|
For traffic that needs to be switched internally by the bridge, base chain is
|
|
**forward**, and it's base command for filtering is ``set firewall bridge
|
|
forward filter ...``, which happens in stage 4, highlighted with red color.
|
|
|
|
.. figure:: /_static/images/firewall-bridge-forward.png
|
|
|
|
For traffic destined to the router itself, or that needs to be routed (assuming
|
|
a layer3 bridge is configured), the base chain is **input**, the base command
|
|
is ``set firewall bridge input filter ...`` and the path is:
|
|
|
|
.. figure:: /_static/images/firewall-bridge-input.png
|
|
|
|
If it's not dropped, then the packet is sent to **IP Layer**, and will be
|
|
processed by the **IP Layer** firewall: IPv4 or IPv6 ruleset. Check once again
|
|
the :doc:`general packet flow diagram</configuration/firewall/index>` if
|
|
needed.
|
|
|
|
And for traffic that originates from the bridge itself, the base chain is
|
|
**output**, base command is ``set firewall bridge output filter ...``, and
|
|
the path is:
|
|
|
|
.. figure:: /_static/images/firewall-bridge-output.png
|
|
|
|
Custom bridge firewall chains can be created with the command ``set firewall bridge
|
|
name <name> ...``. In order to use such custom chain, a rule with action jump,
|
|
and the appropriate target should be defined in a base chain.
|
|
|
|
************
|
|
Bridge Rules
|
|
************
|
|
|
|
For firewall filtering, firewall rules need to be created. Each rule is
|
|
numbered, has an action to apply if the rule is matched, and the ability
|
|
to specify multiple matching criteria. Data packets go through the rules
|
|
from 1 - 999999, so order is crucial. At the first match the action of the
|
|
rule will be executed.
|
|
|
|
Actions
|
|
=======
|
|
|
|
If a rule is defined, then an action must be defined for it. This tells the
|
|
firewall what to do if all matching criterea in the rule are met.
|
|
|
|
In firewall bridge rules, the action can be:
|
|
|
|
* ``accept``: accept the packet.
|
|
|
|
* ``continue``: continue parsing next rule.
|
|
|
|
* ``drop``: drop the packet.
|
|
|
|
* ``jump``: jump to another custom chain.
|
|
|
|
* ``return``: Return from the current chain and continue at the next rule
|
|
of the last chain.
|
|
|
|
* ``queue``: Enqueue packet to userspace.
|
|
|
|
* ``notrack``: ignore connection tracking system. This action is only
|
|
available in prerouting chain.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999> action
|
|
[accept | continue | drop | jump | queue | return]
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999> action
|
|
[accept | continue | drop | jump | queue | return]
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999> action
|
|
[accept | continue | drop | jump | queue | return]
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999> action
|
|
[accept | continue | drop | jump | notrack | queue | return]
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999> action
|
|
[accept | continue | drop | jump | queue | return]
|
|
|
|
This required setting defines the action of the current rule. If action is
|
|
set to jump, then jump-target is also needed.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999>
|
|
jump-target <text>
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999>
|
|
jump-target <text>
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999>
|
|
jump-target <text>
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999>
|
|
jump-target <text>
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999>
|
|
jump-target <text>
|
|
|
|
If action is set to ``queue``, use next command to specify the queue
|
|
target. Range is also supported:
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999>
|
|
queue <0-65535>
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999>
|
|
queue <0-65535>
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999>
|
|
queue <0-65535>
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999>
|
|
queue <0-65535>
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999>
|
|
queue <0-65535>
|
|
|
|
Also, if action is set to ``queue``, use next command to specify the queue
|
|
options. Possible options are ``bypass`` and ``fanout``:
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999>
|
|
queue-options bypass
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999>
|
|
queue-options bypass
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999>
|
|
queue-options bypass
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999>
|
|
queue-options bypass
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999>
|
|
queue-options bypass
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999>
|
|
queue-options fanout
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999>
|
|
queue-options fanout
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999>
|
|
queue-options fanout
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999>
|
|
queue-options fanout
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999>
|
|
queue-options fanout
|
|
|
|
Also, **default-action** is an action that takes place whenever a packet does
|
|
not match any rule in its' chain. For base chains, possible options for
|
|
**default-action** are **accept** or **drop**.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter default-action
|
|
[accept | drop]
|
|
.. cfgcmd:: set firewall bridge input filter default-action
|
|
[accept | drop]
|
|
.. cfgcmd:: set firewall bridge output filter default-action
|
|
[accept | drop]
|
|
.. cfgcmd:: set firewall bridge prerouting filter default-action
|
|
[accept | drop]
|
|
.. cfgcmd:: set firewall bridge name <name> default-action
|
|
[accept | continue | drop | jump | reject | return]
|
|
|
|
This sets the default action of the rule-set if a packet does not match
|
|
any of the rules in that chain. If default-action is set to ``jump``, then
|
|
``default-jump-target`` is also needed. Note that for base chains, default
|
|
action can only be set to ``accept`` or ``drop``, while on custom chains
|
|
more actions are available.
|
|
|
|
.. cfgcmd:: set firewall bridge name <name> default-jump-target <text>
|
|
|
|
To be used only when ``default-action`` is set to ``jump``. Use this
|
|
command to specify jump target for default rule.
|
|
|
|
.. note:: **Important note about default-actions:**
|
|
If the default action for any base chain is not defined, then the default
|
|
action is set to **accept** for that chain. For custom chains, if the
|
|
default action is not defined, then the default-action is set to **drop**.
|
|
|
|
Firewall Logs
|
|
=============
|
|
|
|
Logging can be enable for every single firewall rule. If enabled, other
|
|
log options can be defined.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999> log
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999> log
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999> log
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999> log
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999> log
|
|
|
|
Enable logging for the matched packet. If this configuration command is not
|
|
present, then the log is not enabled.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter default-log
|
|
.. cfgcmd:: set firewall bridge input filter default-log
|
|
.. cfgcmd:: set firewall bridge output filter default-log
|
|
.. cfgcmd:: set firewall bridge prerouting filter default-log
|
|
.. cfgcmd:: set firewall bridge name <name> default-log
|
|
|
|
Use this command to enable the logging of the default action on
|
|
the specified chain.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999>
|
|
log-options level [emerg | alert | crit | err | warn | notice
|
|
| info | debug]
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999>
|
|
log-options level [emerg | alert | crit | err | warn | notice
|
|
| info | debug]
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999>
|
|
log-options level [emerg | alert | crit | err | warn | notice
|
|
| info | debug]
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999>
|
|
log-options level [emerg | alert | crit | err | warn | notice
|
|
| info | debug]
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999>
|
|
log-options level [emerg | alert | crit | err | warn | notice
|
|
| info | debug]
|
|
|
|
Define log-level. Only applicable if rule log is enabled.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999>
|
|
log-options group <0-65535>
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999>
|
|
log-options group <0-65535>
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999>
|
|
log-options group <0-65535>
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999>
|
|
log-options group <0-65535>
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999>
|
|
log-options group <0-65535>
|
|
|
|
Define the log group to send messages to. Only applicable if rule log is
|
|
enabled.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999>
|
|
log-options snapshot-length <0-9000>
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999>
|
|
log-options snapshot-length <0-9000>
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999>
|
|
log-options snapshot-length <0-9000>
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999>
|
|
log-options snapshot-length <0-9000>
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999>
|
|
log-options snapshot-length <0-9000>
|
|
|
|
Define length of packet payload to include in netlink message. Only
|
|
applicable if rule log is enabled and the log group is defined.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999>
|
|
log-options queue-threshold <0-65535>
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999>
|
|
log-options queue-threshold <0-65535>
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999>
|
|
log-options queue-threshold <0-65535>
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999>
|
|
log-options queue-threshold <0-65535>
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999>
|
|
log-options queue-threshold <0-65535>
|
|
|
|
Define the number of packets to queue inside the kernel before sending them
|
|
to userspace. Only applicable if rule log is enabled and the log group is
|
|
defined.
|
|
|
|
Firewall Description
|
|
====================
|
|
|
|
For reference, a description can be defined for every defined custom chain.
|
|
|
|
.. cfgcmd:: set firewall bridge name <name> description <text>
|
|
|
|
Provide a rule-set description to a custom firewall chain.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999>
|
|
description <text>
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999>
|
|
description <text>
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999>
|
|
description <text>
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999>
|
|
description <text>
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999>
|
|
description <text>
|
|
|
|
Provide a description for each rule.
|
|
|
|
Rule Status
|
|
===========
|
|
|
|
When defining a rule, it is enabled by default. In some cases, it is useful to
|
|
just disable the rule, rather than removing it.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999> disable
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999> disable
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999> disable
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999> disable
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999> disable
|
|
|
|
Command for disabling a rule but keep it in the configuration.
|
|
|
|
Matching criteria
|
|
=================
|
|
|
|
There are a lot of matching criteria against which the packet can be tested.
|
|
Please refer to :doc:`IPv4</configuration/firewall/ipv4>` and
|
|
:doc:`IPv6</configuration/firewall/ipv6>` matching criteria for more details.
|
|
|
|
Since bridges operats at layer 2, both matchers for IPv4 and IPv6 are
|
|
supported in bridge firewall configuration. Same applies to firewall groups.
|
|
|
|
Same specific matching criteria that can be used in bridge firewall are
|
|
described in this section:
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999> ethernet-type
|
|
[802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999> ethernet-type
|
|
[802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999> ethernet-type
|
|
[802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999> ethernet-type
|
|
[802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999> ethernet-type
|
|
[802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
|
|
Match based on the Ethernet type of the packet.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999> vlan
|
|
ethernet-type [802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999> vlan
|
|
ethernet-type [802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999> vlan
|
|
ethernet-type [802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999> vlan
|
|
ethernet-type [802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999> vlan
|
|
ethernet-type [802.1q | 802.1ad | arp | ipv4 | ipv6]
|
|
|
|
Match based on the Ethernet type of the packet when it is VLAN tagged.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999> vlan id
|
|
<0-4096>
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999> vlan id
|
|
<0-4096>
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999> vlan id
|
|
<0-4096>
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999> vlan id
|
|
<0-4096>
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999> vlan id
|
|
<0-4096>
|
|
|
|
Match based on VLAN identifier. Range is also supported.
|
|
|
|
.. cfgcmd:: set firewall bridge forward filter rule <1-999999> vlan priority
|
|
<0-7>
|
|
.. cfgcmd:: set firewall bridge input filter rule <1-999999> vlan priority
|
|
<0-7>
|
|
.. cfgcmd:: set firewall bridge output filter rule <1-999999> vlan priority
|
|
<0-7>
|
|
.. cfgcmd:: set firewall bridge prerouting filter rule <1-999999> vlan priority
|
|
<0-7>
|
|
.. cfgcmd:: set firewall bridge name <name> rule <1-999999> vlan priority
|
|
<0-7>
|
|
|
|
Match based on VLAN priority (Priority Code Point - PCP). Range is also
|
|
supported.
|
|
|
|
Packet Modifications
|
|
====================
|
|
|
|
Starting from **VyOS-1.5-rolling-202410060007**, the firewall can modify
|
|
packets before they are sent out. This feaure provides more flexibility in
|
|
packet handling.
|
|
|
|
.. cfgcmd:: set firewall bridge [prerouting | forward | output] filter
|
|
rule <1-999999> set dscp <0-63>
|
|
|
|
Set a specific value of Differentiated Services Codepoint (DSCP).
|
|
|
|
.. cfgcmd:: set firewall bridge [prerouting | forward | output] filter
|
|
rule <1-999999> set mark <1-2147483647>
|
|
|
|
Set a specific packet mark value.
|
|
|
|
.. cfgcmd:: set firewall bridge [prerouting | forward | output] filter
|
|
rule <1-999999> set tcp-mss <500-1460>
|
|
|
|
Set the TCP-MSS (TCP maximum segment size) for the connection.
|
|
|
|
.. cfgcmd:: set firewall bridge [prerouting | forward | output] filter
|
|
rule <1-999999> set ttl <0-255>
|
|
|
|
Set the TTL (Time to Live) value.
|
|
|
|
.. cfgcmd:: set firewall bridge [prerouting | forward | output] filter
|
|
rule <1-999999> set hop-limit <0-255>
|
|
|
|
Set hop limit value.
|
|
|
|
.. cfgcmd:: set firewall bridge [forward | output] filter
|
|
rule <1-999999> set connection-mark <0-2147483647>
|
|
|
|
Set connection mark value.
|
|
|
|
|
|
Use IP firewall
|
|
===============
|
|
|
|
By default, for switched traffic, only the rules defined under ``set firewall
|
|
bridge`` are applied. There are two global-options that can be configured in
|
|
order to force deeper analysis of the packet on the IP layer. These options
|
|
are:
|
|
|
|
.. cfgcmd:: set firewall global-options apply-to-bridged-traffic ipv4
|
|
|
|
This command enables the IPv4 firewall for bridged traffic. If this
|
|
options is used, then packet will also be parsed by rules defined in ``set
|
|
firewall ipv4 ...``
|
|
|
|
.. cfgcmd:: set firewall global-options apply-to-bridged-traffic ipv6
|
|
|
|
This command enables the IPv6 firewall for bridged traffic. If this
|
|
options is used, then packet will also be parsed by rules defined in ``set
|
|
firewall ipv6 ...``
|
|
|
|
***********************
|
|
Operation-mode Firewall
|
|
***********************
|
|
|
|
Rule-set overview
|
|
=================
|
|
|
|
In this section you can find all useful firewall op-mode commands.
|
|
|
|
General commands for firewall configuration, counter and statistics:
|
|
|
|
.. opcmd:: show firewall
|
|
.. opcmd:: show firewall summary
|
|
.. opcmd:: show firewall statistics
|
|
|
|
And, to print only bridge firewall information:
|
|
|
|
.. opcmd:: show firewall bridge
|
|
.. opcmd:: show firewall bridge forward filter
|
|
.. opcmd:: show firewall bridge forward filter rule <rule>
|
|
.. opcmd:: show firewall bridge name <name>
|
|
.. opcmd:: show firewall bridge name <name> rule <rule>
|
|
|
|
Show Firewall log
|
|
=================
|
|
|
|
.. opcmd:: show log firewall
|
|
.. opcmd:: show log firewall bridge
|
|
.. opcmd:: show log firewall bridge forward
|
|
.. opcmd:: show log firewall bridge forward filter
|
|
.. opcmd:: show log firewall bridge name <name>
|
|
.. opcmd:: show log firewall bridge forward filter rule <rule>
|
|
.. opcmd:: show log firewall bridge name <name> rule <rule>
|
|
|
|
Show the logs of all firewall; show all bridge firewall logs; show all logs
|
|
for forward hook; show all logs for forward hook and priority filter; show
|
|
all logs for particular custom chain; show logs for specific Rule-Set.
|
|
|
|
Example
|
|
=======
|
|
|
|
Configuration example:
|
|
|
|
.. code-block:: none
|
|
|
|
set firewall bridge forward filter default-action 'drop'
|
|
set firewall bridge forward filter default-log
|
|
set firewall bridge forward filter rule 10 action 'continue'
|
|
set firewall bridge forward filter rule 10 inbound-interface name 'eth2'
|
|
set firewall bridge forward filter rule 10 vlan id '22'
|
|
set firewall bridge forward filter rule 20 action 'drop'
|
|
set firewall bridge forward filter rule 20 inbound-interface group 'TRUNK-RIGHT'
|
|
set firewall bridge forward filter rule 20 vlan id '60'
|
|
set firewall bridge forward filter rule 30 action 'jump'
|
|
set firewall bridge forward filter rule 30 jump-target 'TEST'
|
|
set firewall bridge forward filter rule 30 outbound-interface name '!eth1'
|
|
set firewall bridge forward filter rule 35 action 'accept'
|
|
set firewall bridge forward filter rule 35 vlan id '11'
|
|
set firewall bridge forward filter rule 40 action 'continue'
|
|
set firewall bridge forward filter rule 40 destination mac-address '66:55:44:33:22:11'
|
|
set firewall bridge forward filter rule 40 source mac-address '11:22:33:44:55:66'
|
|
set firewall bridge name TEST default-action 'accept'
|
|
set firewall bridge name TEST default-log
|
|
set firewall bridge name TEST rule 10 action 'continue'
|
|
set firewall bridge name TEST rule 10 log
|
|
set firewall bridge name TEST rule 10 vlan priority '0'
|
|
|
|
And op-mode commands:
|
|
|
|
.. code-block:: none
|
|
|
|
vyos@BRI:~$ show firewall bridge
|
|
Rulesets bridge Information
|
|
|
|
---------------------------------
|
|
bridge Firewall "forward filter"
|
|
|
|
Rule Action Protocol Packets Bytes Conditions
|
|
------- -------- ---------- --------- ------- ---------------------------------------------------------------------
|
|
10 continue all 0 0 iifname "eth2" vlan id 22 continue
|
|
20 drop all 0 0 iifname @I_TRUNK-RIGHT vlan id 60
|
|
30 jump all 2130 170688 oifname != "eth1" jump NAME_TEST
|
|
35 accept all 2080 168616 vlan id 11 accept
|
|
40 continue all 0 0 ether daddr 66:55:44:33:22:11 ether saddr 11:22:33:44:55:66 continue
|
|
default drop all 0 0
|
|
|
|
---------------------------------
|
|
bridge Firewall "name TEST"
|
|
|
|
Rule Action Protocol Packets Bytes Conditions
|
|
------- -------- ---------- --------- ------- --------------------------------------------------
|
|
10 continue all 2130 170688 vlan pcp 0 prefix "[bri-NAM-TEST-10-C]" continue
|
|
default accept all 2130 170688
|
|
|
|
vyos@BRI:~$
|
|
vyos@BRI:~$ show firewall bridge name TEST
|
|
Ruleset Information
|
|
|
|
---------------------------------
|
|
bridge Firewall "name TEST"
|
|
|
|
Rule Action Protocol Packets Bytes Conditions
|
|
------- -------- ---------- --------- ------- --------------------------------------------------
|
|
10 continue all 2130 170688 vlan pcp 0 prefix "[bri-NAM-TEST-10-C]" continue
|
|
default accept all 2130 170688
|
|
|
|
vyos@BRI:~$
|
|
|
|
Inspect logs:
|
|
|
|
.. code-block:: none
|
|
|
|
vyos@BRI:~$ show log firewall bridge
|
|
Dec 05 14:37:47 kernel: [bri-NAM-TEST-10-C]IN=eth1 OUT=eth2 ARP HTYPE=1 PTYPE=0x0800 OPCODE=1 MACSRC=50:00:00:04:00:00 IPSRC=10.11.11.101 MACDST=00:00:00:00:00:00 IPDST=10.11.11.102
|
|
Dec 05 14:37:48 kernel: [bri-NAM-TEST-10-C]IN=eth1 OUT=eth2 ARP HTYPE=1 PTYPE=0x0800 OPCODE=1 MACSRC=50:00:00:04:00:00 IPSRC=10.11.11.101 MACDST=00:00:00:00:00:00 IPDST=10.11.11.102
|
|
Dec 05 14:37:49 kernel: [bri-NAM-TEST-10-C]IN=eth1 OUT=eth2 ARP HTYPE=1 PTYPE=0x0800 OPCODE=1 MACSRC=50:00:00:04:00:00 IPSRC=10.11.11.101 MACDST=00:00:00:00:00:00 IPDST=10.11.11.102
|
|
...
|
|
vyos@BRI:~$ show log firewall bridge forward filter
|
|
Dec 05 14:42:22 kernel: [bri-FWD-filter-default-D]IN=eth2 OUT=eth1 MAC=33:33:00:00:00:16:50:00:00:06:00:00:86:dd SRC=0000:0000:0000:0000:0000:0000:0000:0000 DST=ff02:0000:0000:0000:0000:0000:0000:0016 LEN=96 TC=0 HOPLIMIT=1 FLOWLBL=0 PROTO=ICMPv6 TYPE=143 CODE=0
|
|
Dec 05 14:42:22 kernel: [bri-FWD-filter-default-D]IN=eth2 OUT=eth1 MAC=33:33:00:00:00:16:50:00:00:06:00:00:86:dd SRC=0000:0000:0000:0000:0000:0000:0000:0000 DST=ff02:0000:0000:0000:0000:0000:0000:0016 LEN=96 TC=0 HOPLIMIT=1 FLOWLBL=0 PROTO=ICMPv6 TYPE=143 CODE=0
|