Guidelines and Limitations
This section includes the guidelines and limitations for this feature.
Context Mode Guidelines
The ASA 5505 does not support multiple context mode.
- You can only configure context interfaces that you already assigned to the context in the system configuration using the allocate-interface command.
Firewall Mode Guidelines
- You can configure up to 8 bridge groups in single mode or per context in multiple mode. Note that you must use at least 1 bridge group; data interfaces must belong to a bridge group.
Note Although you can configure multiple bridge groups on the ASA 5505, the restriction of 2 data interfaces in transparent mode on the ASA 5505 means you can only effectively use 1 bridge group.
- Each bridge group can include up to 4 interfaces.
- For IPv4, a management IP address is required for each bridge group for both management traffic and for traffic to pass through the ASA.
Unlike routed mode, which requires an IP address for each interface, a transparent firewall has an IP address assigned to the entire bridge group. The ASA uses this IP address as the source address for packets originating on the ASA, such as system messages or AAA communications. In addition to the bridge group management address, you can optionally configure a management interface for some models; see the “Management Interface” section for more information.
The management IP address must be on the same subnet as the connected network. You cannot set the subnet to a host subnet (255.255.255.255). The ASA does not support traffic on secondary networks; only traffic on the same network as the management IP address is supported. See the “Configuring Bridge Groups” section for more information about management IP subnets.
- For IPv6, at a minimum you need to configure link-local addresses for each interface for through traffic. For full functionality, including the ability to manage the ASA, you need to configure a global IPv6 address for each bridge group.
- For multiple context mode, each context must use different interfaces; you cannot share an interface across contexts.
- For multiple context mode, each context typically uses a different subnet. You can use overlapping subnets, but your network topology requires router and NAT configuration to make it possible from a routing standpoint.
Failover Guidelines
Do not finish configuring failover interfaces with the procedures in this chapter. See the “Configuring Active/Standby Failover” section or the “Configuring Active/Active Failover” section to configure the failover and state links. In multiple context mode, failover interfaces are configured in the system configuration.
IPv6 Guidelines
- Supports IPv6.
- No support for IPv6 anycast addresses in transparent mode.
Completing Interface Configuration in Transparent Mode
This section includes the following topics:
Configuring Bridge Groups
Each bridge group requires a management IP address. The ASA uses this IP address as the source address for packets originating from the bridge group. The management IP address must be on the same subnet as the connected network. For IPv4 traffic, the management IP address is required to pass any traffic. For IPv6 traffic, you must, at a minimum, configure the link-local addresses to pass traffic, but a global management address is recommended for full functionality, including remote management and other management operations.
Guidelines and Limitations
You can configure up to 8 bridge groups in single mode or per context in multiple mode. Note that you must use at least one bridge group; data interfaces must belong to a bridge group.
Note For a separate management interface (for supported models), a non-configurable bridge group (ID 101) is automatically added to your configuration. This bridge group is not included in the bridge group limit.
Detailed Steps
|
|
|
Step 1 |
interface bvi bridge_group_number
hostname(config)# interface bvi 1 |
Creates a bridge group, where bridge_group_number is an integer between 1 and 100. |
Step 2 |
ip address ip_address [ mask ] [ standby ip_address ]
hostname(config-if)# ip address 10.1.3.1 255.255.255.0 standby 10.1.3.2 |
Specifies the management IP address for the bridge group. Do not assign a host address (/32 or 255.255.255.255) to the bridge group. Also, do not use other subnets that contain fewer than 3 host addresses (one each for the upstream router, downstream router, and transparent firewall) such as a /30 subnet (255.255.255.252). The ASA drops all ARP packets to or from the first and last addresses in a subnet. Therefore, if you use a /30 subnet and assign a reserved address from that subnet to the upstream router, then the ASA drops the ARP request from the downstream router to the upstream router. The ASA does not support traffic on secondary networks; only traffic on the same network as the management IP address is supported. The standby keyword and address is used for failover. |
Examples
The following example sets the management address and standby address of bridge group 1:
hostname(config)# interface bvi 1
hostname(config-if)# ip address 10.1.3.1 255.255.255.0 standby 10.1.3.2
Configuring General Interface Parameters
This procedure describes how to set the name, security level, and bridge group for each transparent interface.
To configure a separate management interface, see the “Configuring a Management Interface (ASA 5510 and Higher)” section.
For the ASA 5510 and higher, you must configure interface parameters for the following interface types:
- Physical interfaces
- VLAN subinterfaces
- Redundant interfaces
- EtherChannel interfaces
For the ASA 5505, you must configure interface parameters for the following interface types:
Guidelines and Limitations
- You can configure up to four interfaces per bridge group.
- For the ASA 5550, for maximum throughput, be sure to balance your traffic over the two interface slots; for example, assign the inside interface to slot 1 and the outside interface to slot 0.
- For information about security levels, see the “Security Levels” section.
- If you are using failover, do not use this procedure to name interfaces that you are reserving for failover and Stateful Failover communications. See the “Configuring Active/Standby Failover” section or the “Configuring Active/Active Failover” section to configure the failover and state links.
Detailed Steps
|
|
|
Step 1 |
For the ASA 5510 and higher: interface {{ redundant number | port-channel number | physical_interface }[. subinterface ] | mapped_name } For the ASA 5505: hostname(config)# interface vlan number
hostname(config)# interface vlan 100 |
If you are not already in interface configuration mode, enters interface configuration mode. The redundant number argument is the redundant interface ID, such as redundant 1. The port-channel number argument is the EtherChannel interface ID, such as port-channel 1. See the “Enabling the Physical Interface and Configuring Ethernet Parameters” section for a description of the physical interface ID. Do not use this procedure for Management interfaces; see the “Configuring a Management Interface (ASA 5510 and Higher)” section to configure the Management interface. Append the subinterface ID to the physical or redundant interface ID separated by a period (.). In multiple context mode, enter the mapped_name if one was assigned using the allocate-interface command. |
Step 2 |
bridge-group number
hostname(config-if)# bridge-group 1 |
Assigns the interface to a bridge group, where number is an integer between 1 and 100. You can assign up to four interfaces to a bridge group. You cannot assign the same interface to more than one bridge group. |
Step 3 |
nameif name
hostname(config-if)# nameif inside |
Names the interface. The name is a text string up to 48 characters, and is not case-sensitive. You can change the name by reentering this command with a new value. Do not enter the no form, because that command causes all commands that refer to that name to be deleted. |
Step 4 |
security-level number
hostname(config-if)# security-level 50 |
Sets the security level, where number is an integer between 0 (lowest) and 100 (highest). |
Configuring a Management Interface (ASA 5510 and Higher)
You can configure one management interface separate from the bridge group interfaces in single mode or per context. For more information, see the “Management Interface” section.
Restrictions
- See the “Management Interface” section.
- Do not assign this interface to a bridge group; a non-configurable bridge group (ID 101) is automatically added to your configuration. This bridge group is not included in the bridge group limit.
- If your model does not include a Management interface, you must manage the transparent firewall from a data interface; skip this procedure. (For example, on the ASA 5505.)
- In multiple context mode, you cannot share any interfaces, including the Management interface, across contexts. To provide management per context, you can create subinterfaces of the Management interface and allocate a Management subinterface to each context. Note that the ASA 5512-X through ASA 5555-X do not allow subinterfaces on the Management interface, so for per-context management, you must connect to a data interface.
Detailed Steps
|
|
|
Step 1 |
interface {{ port-channel number | management slot / port }[. subinterface ] | mapped_name }
hostname(config)# interface management 0/0.1 |
If you are not already in interface configuration mode, enters interface configuration mode for the management interface. The port-channel number argument is the EtherChannel interface ID, such as port-channel 1. The EtherChannel interface must have only Management member interfaces. Redundant interfaces do not support Management slot / port interfaces as members. You also cannot set a redundant interface comprised of non-Management interfaces as management-only. In multiple context mode, enter the mapped_name if one was assigned using the allocate-interface command. |
Step 2 |
nameif name
hostname(config-if)# nameif management |
Names the interface. The name is a text string up to 48 characters, and is not case-sensitive. You can change the name by reentering this command with a new value. Do not enter the no form, because that command causes all commands that refer to that name to be deleted. |
Step 3 |
Do one of the following: |
|
ip address ip_address [ mask ] [ standby ip_address ]
hostname(config-if)# ip address 10.1.1.1 255.255.255.0 standby 10.1.1.2 |
Sets the IP address manually. Note For use with failover, you must set the IP address and standby address manually; DHCP is not supported. The ip_address and mask arguments set the interface IP address and subnet mask. The standby ip_address argument is used for failover. See the “Configuring Active/Standby Failover” section or the “Configuring Active/Active Failover” section for more information. |
|
ip address dhcp [ setroute ]
hostname(config-if)# ip address dhcp |
Obtains an IP address from a DHCP server. The setroute keyword lets the ASA use the default route supplied by the DHCP server. Reenter this command to reset the DHCP lease and request a new lease. If you do not enable the interface using the no shutdown command before you enter the ip address dhcp command, some DHCP requests might not be sent. |
Step 4 |
security-level number
hostname(config-if)# security-level 50 |
Sets the security level, where number is an integer between 0 (lowest) and 100 (highest). |
Configuring the MAC Address and MTU
This section describes how to configure MAC addresses for interfaces and how to set the MTU.
Information About MAC Addresses
By default, the physical interface uses the burned-in MAC address, and all subinterfaces of a physical interface use the same burned-in MAC address.
A redundant interface uses the MAC address of the first physical interface that you add. If you change the order of the member interfaces in the configuration, then the MAC address changes to match the MAC address of the interface that is now listed first. If you assign a MAC address to the redundant interface using this command, then it is used regardless of the member interface MAC addresses.
For an EtherChannel, all interfaces that are part of the channel group share the same MAC address. This feature makes the EtherChannel transparent to network applications and users, because they only see the one logical connection; they have no knowledge of the individual links. The port-channel interface uses the lowest numbered channel group interface MAC address as the port-channel MAC address. Alternatively you can manually configure a MAC address for the port-channel interface. In multiple context mode, you can automatically assign unique MAC addresses to interfaces, including an EtherChannel port interface. We recommend manually, or in multiple context mode, automatically configuring a unique MAC address in case the group channel interface membership changes. If you remove the interface that was providing the port-channel MAC address, then the port-channel MAC address changes to the next lowest numbered interface, thus causing traffic disruption.
In multiple context mode, if you share an interface between contexts, you can assign a unique MAC address to the interface in each context. This feature lets the ASA easily classify packets into the appropriate context. Using a shared interface without unique MAC addresses is possible, but has some limitations. See the “How the ASA Classifies Packets” section for more information. You can assign each MAC address manually, or you can automatically generate MAC addresses for shared interfaces in contexts. See the “Automatically Assigning MAC Addresses to Context Interfaces” section to automatically generate MAC addresses. If you automatically generate MAC addresses, you can use this procedure to override the generated address.
For single context mode, or for interfaces that are not shared in multiple context mode, you might want to assign unique MAC addresses to subinterfaces. For example, your service provider might perform access control based on the MAC address.
Information About the MTU
The MTU is the maximum datagram size that is sent on a connection. Data that is larger than the MTU value is fragmented before being sent.
The ASA supports IP path MTU discovery (as defined in RFC 1191), which allows a host to dynamically discover and cope with the differences in the maximum allowable MTU size of the various links along the path. Sometimes, the ASA cannot forward a datagram because the packet is larger than the MTU that you set for the interface, but the “don't fragment” (DF) bit is set. The network software sends a message to the sending host, alerting it to the problem. The host has to fragment packets for the destination so that they fit the smallest packet size of all the links along the path.
The default MTU is 1500 bytes in a block for Ethernet interfaces. This value is sufficient for most applications, but you can pick a lower number if network conditions require it.
To enable jumbo frames, see the “Enabling Jumbo Frame Support (Supported Models)” section. A jumbo frame is an Ethernet packet larger than the standard maximum of 1518 bytes (including Layer 2 header and FCS), up to 9216 bytes. Jumbo frames require extra memory to process, and assigning more memory for jumbo frames might limit the maximum use of other features, such as access lists. To use jumbo frames, set the value higher, for example, to 9000 bytes.
Detailed Steps
|
|
|
Step 1 |
For the ASA 5510 and higher: interface {{ redundant number | port-channel number | physical_interface }[. subinterface ] | mapped_name } For the ASA 5505: hostname(config)# interface vlan number
hostname(config)# interface vlan 100 |
If you are not already in interface configuration mode, enters interface configuration mode. The redundant number argument is the redundant interface ID, such as redundant 1. The port-channel number argument is the EtherChannel interface ID, such as port-channel 1. See the “Enabling the Physical Interface and Configuring Ethernet Parameters” section for a description of the physical interface ID. Append the subinterface ID to the physical or redundant interface ID separated by a period (.). In multiple context mode, enter the mapped_name if one was assigned using the allocate-interface command. |
Step 2 |
mac-address m ac_address [ standby mac_address ]
hostname(config-if)# mac-address 000C.F142.4CDE |
Assigns a private MAC address to this interface. The mac_address is in H.H.H format, where H is a 16-bit hexadecimal digit. For example, the MAC address 00-0C-F1-42-4C-DE is entered as 000C.F142.4CDE. The first two bytes of a manual MAC address cannot be A2 if you also want to use auto-generated MAC addresses. For use with failover, set the standby MAC address. If the active unit fails over and the standby unit becomes active, the new active unit starts using the active MAC addresses to minimize network disruption, while the old active unit uses the standby address. |
Step 3 |
mtu interface_name bytes
hostname(config)# mtu inside 9200 |
Sets the MTU between 300 and 65,535 bytes. The default is 1500 bytes. Note When you set the MTU for a redundant or port-channel interface, the ASA applies the setting to all member interfaces. For models that support jumbo frames, if you enter a value for any interface that is greater than 1500, then you need to enable jumbo frame support. See the “Enabling Jumbo Frame Support (Supported Models)” section. |
Information About IPv6
This section includes information about how to configure IPv6, and includes the following topics:
IPv6 Addressing
You can configure two types of unicast addresses for IPv6:
- Global—The global address is a public address that you can use on the public network. This address needs to be configured for each bridge group, and not per-interface. You can also configure a global IPv6 address for the management interface.
- Link-local—The link-local address is a private address that you can only use on the directly-connected network. Routers do not forward packets using link-local addresses; they are only for communication on a particular physical network segment. They can be used for address configuration or for the ND functions such as address resolution and neighbor discovery. Because the link-local address is only available on a segment, and is tied to the interface MAC address, you need to configure the link-local address per interface.
At a minimum, you need to configure a link-local address for IPv6 to operate. If you configure a global address, a link-local addresses is automatically configured on each interface, so you do not also need to specifically configure a link-local address. If you do not configure a global address, then you need to configure the link-local address, either automatically or manually.
Note If you want to only configure the link-local addresses, see the ipv6 enable (to auto-configure) or ipv6 address link-local (to manually configure) command in the command reference.
Duplicate Address Detection
During the stateless autoconfiguration process, duplicate address detection (DAD) verifies the uniqueness of new unicast IPv6 addresses before the addresses are assigned to interfaces (the new addresses remain in a tentative state while duplicate address detection is performed). Duplicate address detection is performed first on the new link-local address. When the link local address is verified as unique, then duplicate address detection is performed all the other IPv6 unicast addresses on the interface.
Duplicate address detection is suspended on interfaces that are administratively down. While an interface is administratively down, the unicast IPv6 addresses assigned to the interface are set to a pending state. An interface returning to an administratively up state restarts duplicate address detection for all of the unicast IPv6 addresses on the interface.
When a duplicate address is identified, the state of the address is set to DUPLICATE, the address is not used, and the following error message is generated:
%ASA-4-325002: Duplicate address ipv6_address/MAC_address on interface
If the duplicate address is the link-local address of the interface, the processing of IPv6 packets is disabled on the interface. If the duplicate address is a global address, the address is not used. However, all configuration commands associated with the duplicate address remain as configured while the state of the address is set to DUPLICATE.
If the link-local address for an interface changes, duplicate address detection is performed on the new link-local address and all of the other IPv6 address associated with the interface are regenerated (duplicate address detection is performed only on the new link-local address).
The ASA uses neighbor solicitation messages to perform duplicate address detection. By default, the number of times an interface performs duplicate address detection is 1.
Modified EUI-64 Interface IDs
RFC 3513: Internet Protocol Version 6 (IPv6) Addressing Architecture requires that the interface identifier portion of all unicast IPv6 addresses, except those that start with binary value 000, be 64 bits long and be constructed in Modified EUI-64 format. The ASA can enforce this requirement for hosts attached to the local link.
When this feature is enabled on an interface, the source addresses of IPv6 packets received on that interface are verified against the source MAC addresses to ensure that the interface identifiers use the Modified EUI-64 format. If the IPv6 packets do not use the Modified EUI-64 format for the interface identifier, the packets are dropped and the following system log message is generated:
%ASA-3-325003: EUI-64 source address check failed.
The address format verification is only performed when a flow is created. Packets from an existing flow are not checked. Additionally, the address verification can only be performed for hosts on the local link. Packets received from hosts behind a router will fail the address format verification, and be dropped, because their source MAC address will be the router MAC address and not the host MAC address.
Unsupported Commands
The following IPv6 commands are not supported in transparent firewall mode, because they require router capabilities:
- ipv6 address autoconfig
- ipv6 nd prefix
- ipv6 nd ra-interval
- ipv6 nd ra-lifetime
- ipv6 nd suppress-ra
The ipv6 local pool VPN command is not supported, because transparent mode does not support VPN.
Configuring a Global IPv6 Address and Other Options
To configure a global IPv6 address and other options for a bridge group or management interface, perform the following steps.
Note Configuring the global address automatically configures the link-local address, so you do not need to configure it separately.
Restrictions
The ASA does not support IPv6 anycast addresses.
Detailed Steps
|
|
|
Step 1 |
For the bridge group: interface bvi bridge_group_id For the management interface: interface management_interface_id
hostname(config)# interface bvi 1 |
If you are not already in interface configuration mode, enters interface configuration mode. |
Step 2 |
ipv6 address ipv6-address/prefix-length [ standby ipv6-address ]
hostname(config-if)# ipv6 address 2001:0DB8::BA98:0:3210/48 |
Assigns a global address to the interface. When you assign a global address, the link-local address is automatically created for the interface (for a bridge group, for each member interface). standby specifies the interface address used by the secondary unit or failover group in a failover pair. Note The eui-64 keyword to use the Modified EUI-64 interface ID for the interface ID is not supported in transparent mode. See the “IPv6 Addresses” section for more information about IPv6 addressing. |
Step 3 |
(Optional) ipv6 nd suppress-ra
hostname(config-if)# ipv6 nd suppress-ra |
Suppresses Router Advertisement messages on an interface. By default, Router Advertisement messages are automatically sent in response to router solicitation messages. You may want to disable these messages on any interface for which you do not want the ASA to supply the IPv6 prefix (for example, the outside interface). |
Step 4 |
(Optional) ipv6 nd dad attempts value
hostname(config-if)# ipv6 nd dad attempts 3 |
Changes the number of duplicate address detection attempts. The value argument can be any value from 0 to 600. Setting the value argument to 0 disables duplicate address detection on the interface. By default, the number of times an interface performs duplicate address detection is 1. See the “Duplicate Address Detection” section for more information. |
Step 5 |
(Optional) ipv6 nd ns-interval value
hostname(config-if)# ipv6 nd ns-interval 2000 |
Changes the neighbor solicitation message interval. When you configure an interface to send out more than one duplicate address detection attempt with the ipv6 nd dad attempts command, this command configures the interval at which the neighbor solicitation messages are sent out. By default, they are sent out once every 1000 milliseconds. The value argument can be from 1000 to 3600000 milliseconds. Note Changing this value changes it for all neighbor solicitation messages sent out on the interface, not just those used for duplicate address detection. |
Step 6 |
(Optional)
ipv6 enforce-eui64
if_name
hostname(config)# ipv6 enforce-eui64 inside
|
Enforces the use of Modified EUI-64 format interface identifiers in IPv6 addresses on a local link. The if_name argument is the name of the interface, as specified by the nameif command, on which you are enabling the address format enforcement. See the “Modified EUI-64 Interface IDs” section for more information. |
Allowing Same Security Level Communication
By default, interfaces on the same security level cannot communicate with each other, and packets cannot enter and exit the same interface. This section describes how to enable inter-interface communication when interfaces are on the same security level.
Information About Inter-Interface Communication
Allowing interfaces on the same security level to communicate with each other is useful if you want traffic to flow freely between all same security interfaces without access lists.
If you enable same security interface communication, you can still configure interfaces at different security levels as usual.
Detailed Steps
|
|
same-security-traffic permit inter-interface |
Enables interfaces on the same security level so that they can communicate with each other. |