- Table of Contents
-
- 10-Security Configuration Guide
- 00-Preface
- 01-AAA configuration
- 02-802.1X configuration
- 03-MAC authentication configuration
- 04-Portal configuration
- 05-Port security configuration
- 06-Password control configuration
- 07-Public key management
- 08-SSL configuration
- 09-PKI configuration
- 10-IPsec configuration
- 11-SSH configuration
- 12-IP source guard configuration
- 13-ARP attack protection configuration
- 14-uRPF configuration
- 15-FIPS configuration
- 16-Attack detection and prevention configuration
- 17-MACsec configuration
- 18-MFF configuration
- 19-ND attack defense configuration
- 20-Keychain configuration
- Related Documents
-
Title | Size | Download |
---|---|---|
13-ARP attack protection configuration | 221.63 KB |
Configuring ARP attack protection
ARP attack protection configuration task list
Configuring unresolvable IP attack protection
Configuring ARP source suppression
Configuring ARP blackhole routing
Displaying and maintaining unresolvable IP attack protection
Configuring ARP packet rate limit
Configuring source MAC-based ARP attack detection
Displaying and maintaining source MAC-based ARP attack detection
Configuring ARP packet source MAC consistency check
Configuring ARP active acknowledgement
Configuration example (on a DHCP server)
Configuration example (on a DHCP relay agent)
Configuring user validity check
Configuring ARP packet validity check
Configuring ARP restricted forwarding
Displaying and maintaining ARP detection
User validity check configuration example
User validity check and ARP packet validity check configuration example
Configuring ARP scanning and fixed ARP
Configuration restrictions and guidelines
Configuring ARP gateway protection
Configuring the checking of sender IP addresses for ARP packets
Configuring ARP attack protection
Although ARP is easy to implement, it provides no security mechanism and is vulnerable to network attacks. An attacker can exploit ARP vulnerabilities to attack network devices in the following ways:
· Acts as a trusted user or gateway to send ARP packets so the receiving devices obtain incorrect ARP entries.
· Sends a large number of unresolvable IP packets to have the receiving device busy with resolving IP addresses until its CPU is overloaded. Unresolvable IP packets refer to IP packets for which ARP cannot find corresponding MAC addresses.
· Sends a large number of ARP packets to overload the CPU of the receiving device.
For more information about ARP attack features and types, see ARP Attack Protection Technology White Paper.
ARP attack protection configuration task list
Tasks at a glance |
Flood prevention: · Configuring unresolvable IP attack protection (configured on gateways) ¡ Configuring ARP source suppression ¡ Configuring ARP blackhole routing · Configuring ARP packet rate limit (configured on access devices) · Configuring source MAC-based ARP attack detection (configured on gateways) |
User and gateway spoofing prevention: · Configuring ARP packet source MAC consistency check (configured on gateways) · Configuring ARP active acknowledgement (configured on gateways) · Configuring authorized ARP (configured on gateways) · Configuring ARP detection (configured on access devices) · Configuring ARP scanning and fixed ARP (configured on gateways) · Configuring ARP gateway protection (configured on access devices) · Configuring ARP filtering (configured on access devices) · Configuring the checking of sender IP addresses for ARP packets (configured on gateways) |
Configuring unresolvable IP attack protection
If a device receives a large number of unresolvable IP packets from a host, the following situations can occur:
· The device sends a large number of ARP requests, overloading the target subnets.
· The device keeps trying to resolve the destination IP addresses, overloading its CPU.
To protect the device from such IP attacks, you can configure the following features:
· ARP source suppression—Stops resolving packets from an IP address if the number of unresolvable IP packets from the IP address exceeds the upper limit within 5 seconds. The device continues ARP resolution when the interval elapses. This feature is applicable if the attack packets have the same source addresses.
· ARP blackhole routing—Creates a blackhole route destined for an unresolved IP address. The device drops all matching packets until the blackhole route is deleted. A blackhole route is deleted when its aging timer (25 seconds) is reached or the route becomes reachable.
After a blackhole route is created for an unresolved IP address, the device immediately starts the first ARP blackhole route probe by sending an ARP request. If the resolution fails, the device continues probing according to the probe settings. If the IP address resolution succeeds in a probe, the device converts the blackhole route to a normal route. If an ARP blackhole route ages out before the device finishes all probes, the device deletes the blackhole route and does not perform the remaining probes.
This feature is applicable regardless of whether the attack packets have the same source addresses.
Configuring ARP source suppression
Command |
Remarks |
|
1. Enter system view. |
system-view |
N/A |
2. Enable ARP source suppression. |
arp source-suppression enable |
By default, ARP source suppression is disabled. |
3. Set the maximum number of unresolvable packets that the device can process per source IP address within 5 seconds. |
arp source-suppression limit limit-value |
By default, the maximum number is 10. |
Configuring ARP blackhole routing
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. Enable ARP blackhole routing. |
arp resolving-route enable |
By default, ARP blackhole routing is enabled. |
3. (Optional.) Set the number of ARP blackhole route probes for each unresolved IP address. |
arp resolving-route probe-count count |
The default setting is one probe. |
4. (Optional.) Set the interval at which the device probes ARP blackhole routes. |
arp resolving-route probe-interval interval |
The default setting is 1 second. |
Displaying and maintaining unresolvable IP attack protection
Execute display commands in any view.
Task |
Command |
Display ARP source suppression configuration information. |
display arp source-suppression |
Configuration example
Network requirements
As shown in Figure 1, a LAN contains two areas: an R&D area in VLAN 10 and an office area in VLAN 20. Each area connects to the gateway (Device) through an access switch.
A large number of ARP requests are detected in the office area and are considered an attack caused by unresolvable IP packets. To prevent the attack, configure ARP source suppression and ARP blackhole routing.
Configuration considerations
If the attack packets have the same source address, configure the ARP source suppression feature as follows:
1. Enable ARP source suppression.
2. Set the threshold to 100. If the number of unresolvable IP packets received from an IP address within 5 seconds exceeds 100, the device stops resolving packets from the host until the 5 seconds elapse.
If the attack packets have different source addresses, enable the ARP blackhole routing feature on the gateway.
Configuration procedure
# Enable ARP source suppression and set the threshold to 100.
<Device> system-view
[Device] arp source-suppression enable
[Device] arp source-suppression limit 100
# Enable ARP blackhole routing.
[Device] arp resolving-route enable
Configuring ARP packet rate limit
The ARP packet rate limit feature allows you to limit the rate of ARP packets delivered to the CPU. An ARP detection enabled device will send all received ARP packets to the CPU for inspection. Processing excessive ARP packets will make the device malfunction or even crash. To solve this problem, configure ARP packet rate limit.
Configuration guidelines
Configure this feature when ARP detection, ARP snooping, ARP fast-reply, or MFF is enabled, or when ARP flood attacks are detected.
Configuration procedure
This task sets a rate limit for ARP packets received on an interface. When the receiving rate of ARP packets on the interface exceeds the rate limit, those packets are discarded.
You can enable sending notifications to the SNMP module or enable logging for ARP packet rate limit.
· If notification sending is enabled, the device sends the highest threshold-crossed ARP packet rate within the sending interval in a notification to the SNMP module. You must use the snmp-agent target-host command to set the notification type and target host. For more information about notifications, see Network Management and Monitoring Command Reference.
· If logging for ARP packet rate limit is enabled, the device sends the highest threshold-crossed ARP packet rate within the sending interval in a log message to the information center. You can configure the information center module to set the log output rules. For more information about information center, see Network Management and Monitoring Configuration Guide.
To configure ARP packet rate limit:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. (Optional.) Enable notification sending for ARP packet rate limit. |
snmp-agent trap enable arp [ rate-limit ] |
By default, notification sending for ARP packet rate limit is disabled. |
3. (Optional.) Enable logging for ARP packet rate limit. |
arp rate-limit log enable |
By default, logging for ARP packet rate limit is disabled. |
4. (Optional.) Set the notification and log message sending interval. |
arp rate-limit log interval seconds |
By default, the device sends notifications and log messages at an interval of 60 seconds. |
5. Enter Layer 2 Ethernet interface or Layer 2 aggregate interface view. |
interface interface-type interface-number |
N/A |
6. Enable ARP packet rate limit and set the rate limit. |
arp rate-limit [ pps ] |
By default, ARP packet rate limit is enabled. The default rate limit is 100 pps. |
|
NOTE: If you enable notification sending and logging for ARP packet rate limit on a Layer 2 aggregate interface, the functions apply to all aggregation member ports. |
Configuring source MAC-based ARP attack detection
This feature checks the number of ARP packets delivered to the CPU. If the number of packets from the same MAC address within 5 seconds exceeds a threshold, the device adds the MAC address to an ARP attack entry. Before the entry is aged out, the device handles the attack by using either of the following methods:
· Monitor—Only generates log messages.
· Filter—Generates log messages and filters out subsequent ARP packets from that MAC address.
You can exclude the MAC addresses of some gateways and servers from this detection. This feature does not inspect ARP packets from those devices even if they are attackers.
Configuration procedure
To configure source MAC-based ARP attack detection:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. Enable source MAC-based ARP attack detection and specify the handling method. |
arp source-mac { filter | monitor } |
By default, this feature is disabled. |
3. Configure the threshold. |
arp source-mac threshold threshold-value |
The default threshold is 30. |
4. Configure the aging timer for ARP attack entries. |
arp source-mac aging-time time |
By default, the lifetime is 300 seconds. |
5. (Optional.) Exclude specific MAC addresses from this detection. |
arp source-mac exclude-mac mac-address&<1-n> |
By default, no MAC address is excluded. The value range for the n argument is 1 to 10. |
|
NOTE: When an ARP attack entry is aged out, ARP packets sourced from the MAC address in the entry can be processed correctly. |
Displaying and maintaining source MAC-based ARP attack detection
Execute display commands in any view.
Task |
Command |
Display ARP attack entries detected by source MAC-based ARP attack detection. |
display arp source-mac { slot slot-number | interface interface-type interface-number } |
Configuration example
Network requirements
As shown in Figure 2, the hosts access the Internet through a gateway (Device). If malicious users send a large number of ARP requests to the gateway, the gateway might crash and cannot process requests from the clients. To solve this problem, configure source MAC-based ARP attack detection on the gateway.
Figure 2 Network diagram
Configuration considerations
An attacker might forge a large number of ARP packets by using the MAC address of a valid host as the source MAC address. To prevent such attacks, configure the gateway in the following steps:
1. Enable source MAC-based ARP attack detection and specify the handling method as filter.
2. Set the threshold.
3. Set the lifetime for ARP attack entries.
4. Exclude the MAC address of the server from this detection.
Configuration procedure
# Enable source MAC-based ARP attack detection, and specify the handling method as filter.
<Device> system-view
[Device] arp source-mac filter
# Set the threshold to 30.
[Device] arp source-mac threshold 30
# Set the lifetime for ARP attack entries to 60 seconds.
[Device] arp source-mac aging-time 60
# Exclude MAC address 0012-3f86-e94c from this detection.
[Device] arp source-mac exclude-mac 0012-3f86-e94c
Configuring ARP packet source MAC consistency check
This feature enables a gateway to filter out ARP packets whose source MAC address in the Ethernet header is different from the sender MAC address in the message body. This feature allows the gateway to learn correct ARP entries.
To enable ARP packet source MAC address consistency check:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. Enable ARP packet source MAC address consistency check. |
arp valid-check enable |
By default, ARP packet source MAC address consistency check is disabled. |
Configuring ARP active acknowledgement
Configure this feature on gateways to prevent user spoofing.
ARP active acknowledgement prevents a gateway from generating incorrect ARP entries.
In strict mode, a gateway performs more strict validity checks before creating an ARP entry:
· Upon receiving an ARP request destined for the gateway, the gateway sends an ARP reply but does not create an ARP entry.
· Upon receiving an ARP reply, the gateway determines whether it has resolved the sender IP address:
¡ If yes, the gateway performs active acknowledgement. When the ARP reply is verified as valid, the gateway creates an ARP entry.
¡ If no, the gateway discards the packet.
To configure ARP active acknowledgement:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. Enable the ARP active acknowledgement feature. |
arp active-ack [ strict ] enable |
By default, this feature is disabled. |
Configuring authorized ARP
Authorized ARP entries are generated based on the DHCP clients' address leases on the DHCP server or dynamic client entries on the DHCP relay agent. For more information about DHCP server and DHCP relay agent, see Layer 3—IP Services Configuration Guide.
With authorized ARP enabled, an interface is disabled from learning dynamic ARP entries. This feature prevents user spoofing and allows only authorized clients to access network resources.
Configuration procedure
To enable authorized ARP:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. Enter Layer 3 Ethernet interface, Layer 3 aggregate interface, or VLAN interface view. |
interface interface-type interface-number |
N/A |
3. Enable authorized ARP on the interface. |
arp authorized enable |
By default, authorized ARP is disabled. |
Configuration example (on a DHCP server)
Network requirements
As shown in Figure 3, configure authorized ARP on Ten-GigabitEthernet 1/1/1 of Device A (a DHCP server) to ensure user validity.
Configuration procedure
1. Configure Device A:
# Specify the IP address for Ten-GigabitEthernet 1/1/1.
<DeviceA> system-view
[DeviceA] interface ten-gigabitethernet 1/1/1
[DeviceA-Ten-GigabitEthernet1/1/1] ip address 10.1.1.1 24
[DeviceA-Ten-GigabitEthernet1/1/1] quit
# Configure DHCP.
[DeviceA] dhcp enable
[DeviceA] dhcp server ip-pool 1
[DeviceA-dhcp-pool-1] network 10.1.1.0 mask 255.255.255.0
[DeviceA-dhcp-pool-1] quit
# Enter Layer 3 Ethernet interface view.
[DeviceA] interface ten-gigabitethernet 1/1/1
# Enable authorized ARP.
[DeviceA-Ten-GigabitEthernet1/1/1] port link-mode route
[DeviceA-Ten-GigabitEthernet1/1/1] arp authorized enable
[DeviceA-Ten-GigabitEthernet1/1/1] quit
2. Configure Device B:
<DeviceB> system-view
[DeviceB] interface ten-gigabitethernet 1/1/1
[DeviceB-Ten-GigabitEthernet1/1/1] ip address dhcp-alloc
[DeviceB-Ten-GigabitEthernet1/1/1] quit
Verifying the configuration
# Display authorized ARP entry information on Device A.
[DeviceA] display arp all
Type: S-Static D-Dynamic O-Openflow M-Multiport I-Invalid
IP Address MAC Address VLAN Interface Aging Type
10.1.1.2 0012-3f86-e94c N/A XGE1/1/1 20 D
The output shows that IP address 10.1.1.2 has been assigned to Device B.
Device B must use the IP address and MAC address in the authorized ARP entry to communicate with Device A. Otherwise, the communication fails. Thus user validity is ensured.
Configuration example (on a DHCP relay agent)
Network requirements
As shown in Figure 4, configure authorized ARP on Ten-GigabitEthernet 1/1/2 of Device B (a DHCP relay agent) to ensure user validity.
Configuration procedure
1. Configure Device A:
# Specify the IP address for Ten-GigabitEthernet 1/1/1.
<DeviceA> system-view
[DeviceA] interface ten-gigabitethernet 1/1/1
[DeviceA-Ten-GigabitEthernet1/1/1] ip address 10.1.1.1 24
[DeviceA-Ten-GigabitEthernet1/1/1] quit
# Configure DHCP.
[DeviceA] dhcp enable
[DeviceA] dhcp server ip-pool 1
[DeviceA-dhcp-pool-1] network 10.10.1.0 mask 255.255.255.0
[DeviceA-dhcp-pool-1] gateway-list 10.10.1.1
[DeviceA-dhcp-pool-1] quit
[DeviceA] ip route-static 10.10.1.0 24 10.1.1.2
2. Configure Device B:
# Enable DHCP.
<DeviceB> system-view
[DeviceB] dhcp enable
# Specify the IP addresses of Ten-GigabitEthernet 1/1/1 and Ten-GigabitEthernet 1/1/2.
[DeviceB] interface ten-gigabitethernet 1/1/1
[DeviceB-Ten-GigabitEthernet1/1/1] ip address 10.1.1.2 24
[DeviceB-Ten-GigabitEthernet1/1/1] quit
[DeviceB] interface ten-gigabitethernet 1/1/2
[DeviceB-Ten-GigabitEthernet1/1/2] ip address 10.10.1.1 24
# Enable DHCP relay agent on Ten-GigabitEthernet 1/1/2.
[DeviceB-Ten-GigabitEthernet1/1/2] dhcp select relay
# Add the DHCP server 10.1.1.1 to DHCP server group 1.
[DeviceB-Ten-GigabitEthernet1/1/2] dhcp relay server-address 10.1.1.1
# Enable authorized ARP.
[DeviceB-Ten-GigabitEthernet1/1/2] port link-mode route
[DeviceB-Ten-GigabitEthernet1/1/2] arp authorized enable
[DeviceB-Ten-GigabitEthernet1/1/2] quit
# Enable recording of relay entries on the relay agent.
[DeviceB] dhcp relay client-information record
3. Configure Device C:
<DeviceC> system-view
[DeviceC] ip route-static 10.1.1.0 24 10.10.1.1
[DeviceC] interface ten-gigabitethernet 1/1/2
[DeviceC-Ten-GigabitEthernet1/1/2] ip address dhcp-alloc
[DeviceC-Ten-GigabitEthernet1/1/2] quit
Verifying the configuration
# Display authorized ARP information on Device B.
[DeviceB] display arp all
Type: S-Static D-Dynamic O-Openflow M-Multiport I-Invalid
IP Address MAC Address VLAN Interface Aging Type
10.10.1.2 0012-3f86-e94c N/A XGE1/1/2 20 D
The output shows that Device A assigned the IP address 10.10.1.2 to Device C.
Device C must use the IP address and MAC address in the authorized ARP entry to communicate with Device B. Otherwise, the communication fails. Thus the user validity is ensured.
Configuring ARP detection
ARP detection enables access devices to block ARP packets from unauthorized clients to prevent user spoofing and gateway spoofing attacks. ARP detection does not check ARP packets received from ARP trusted ports.
ARP detection provides the user validity check, ARP packet validity check, and ARP restricted forwarding functions.
If both ARP packet validity check and user validity check are enabled, the former one applies first, and then the latter applies.
Configuring user validity check
The device checks user validity upon receiving an ARP packet from an ARP untrusted interface as follows:
1. Uses the user validity check rules to match the sender IP and MAC addresses of the ARP packet.
¡ If a match is found, the device processes the ARP packet according to the rule.
¡ If no match is found, proceeds to step 2.
2. Uses static IP source guard bindings, DHCP snooping entries, and 802.1X security entries to match the sender IP and MAC addresses of the ARP packet.
¡ If a match is found, the device forwards the ARP packet.
¡ If no match is found, the device discards the ARP packet.
Static IP source guard binding entries are created by using the ip source binding command. For more information, see "Configuring IP source guard."
DHCP snooping entries are automatically generated by DHCP snooping. For more information, see Layer 3—IP Services Configuration Guide.
802.1X security entries are generated by 802.1X. After a client passes 802.1X authentication and uploads its IP address to an ARP detection enabled device, the device automatically generates an 802.1X security entry. The 802.1X client must be enabled to upload its IP address to the device. For more information, see "Configuring 802.1X."
Configuration guidelines
When you configure user validity check, you must specify a VLAN for an IP source guard binding entry. Otherwise, no ARP packets can match the IP source guard binding entry.
Configuration procedure
To configure user validity check:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. (Optional.) Configure a user validity check rule. |
arp detection rule rule-id { deny | permit } ip { any | ip-address [ ip-address-mask ] } mac { any | mac-address [ mac-address-mask ] } [ vlan vlan-id ] |
By default, no user validity check rule is configured. |
3. Enter VLAN view. |
vlan vlan-id |
N/A |
4. Enable ARP detection. |
arp detection enable |
By default, ARP detection is disabled. |
5. Return to system view. |
quit |
N/A |
6. Enter Layer 2 Ethernet interface view or Layer 2 aggregate interface view. |
interface interface-type interface-number |
N/A |
7. (Optional.) Configure the interface as a trusted interface excluded from ARP detection. |
arp detection trust |
By default, an interface is untrusted. |
Configuring ARP packet validity check
Enable validity check for ARP packets received on untrusted interfaces and specify the following objects to be checked:
· src-mac—Checks whether the sender MAC address in the message body is identical to the source MAC address in the Ethernet header. If they are identical, the packet is forwarded. Otherwise, the packet is discarded.
· dst-mac—Checks the target MAC address of ARP replies. If the target MAC address is all-zero, all-one, or inconsistent with the destination MAC address in the Ethernet header, the packet is considered invalid and discarded.
· ip—Checks the sender and target IP addresses of ARP replies, and the sender IP address of ARP requests. All-one or multicast IP addresses are considered invalid and the corresponding packets are discarded.
To configure ARP packet validity check:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. Enter VLAN view. |
vlan vlan-id |
N/A |
3. Enable ARP detection. |
arp detection enable |
By default, ARP detection is disabled. |
4. Return to system view. |
quit |
N/A |
5. Enable ARP packet validity check and specify the objects to be checked. |
arp detection validate { dst-mac | ip | src-mac } * |
By default, ARP packet validity check is disabled. |
6. Enter Layer 2 Ethernet interface view or Layer 2 aggregate interface view. |
interface interface-type interface-number |
N/A |
7. (Optional.) Configure the interface as a trusted interface excluded from ARP detection. |
arp detection trust |
By default, an interface is untrusted. |
Configuring ARP restricted forwarding
|
NOTE: ARP restricted forwarding does not apply to ARP packets with multiport MAC as their destination MAC addresses. |
ARP restricted forwarding controls the forwarding of ARP packets that are received on untrusted interfaces and have passed user validity check as follows:
· If the packets are ARP requests, they are forwarded through the trusted interface.
· If the packets are ARP replies, they are forwarded according to their destination MAC address. If no match is found in the MAC address table, they are forwarded through the trusted interface.
Configure user validity check before you configure ARP restricted forwarding.
To enable ARP restricted forwarding:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. Enter VLAN view. |
vlan vlan-id |
N/A |
3. Enable ARP restricted forwarding. |
arp restricted-forwarding enable |
By default, ARP restricted forwarding is disabled. |
Displaying and maintaining ARP detection
Execute display commands in any view and reset commands in user view.
Task |
Command |
Display the VLANs enabled with ARP detection. |
display arp detection |
Display the ARP detection statistics. |
display arp detection statistics [ interface interface-type interface-number ] |
Clear the ARP detection statistics. |
reset arp detection statistics [ interface interface-type interface-number ] |
User validity check configuration example
Network requirements
As shown in Figure 5, configure Switch B to perform user validity check based on 802.1X security entries for connected hosts.
Configuration procedure
1. Add all interfaces on Switch B to VLAN 10, and specify the IP address of VLAN-interface 10 on Switch A. (Details not shown.)
2. Configure the DHCP server on Switch A, and configure DHCP address pool 0.
<SwitchA> system-view
[SwitchA] dhcp enable
[SwitchA] dhcp server ip-pool 0
[SwitchA-dhcp-pool-0] network 10.1.1.0 mask 255.255.255.0
3. Configure Host A and Host B as 802.1X clients and configure them to upload IP addresses for ARP detection. (Details not shown.)
4. Configure Switch B:
# Enable 802.1X.
<SwitchB> system-view
[SwitchB] dot1x
[SwitchB] interface ten-gigabitethernet 1/1/1
[SwitchB-Ten-GigabitEthernet1/1/1] dot1x
[SwitchB-Ten-GigabitEthernet1/1/1] quit
[SwitchB] interface ten-gigabitethernet 1/1/2
[SwitchB-Ten-GigabitEthernet1/1/2] dot1x
[SwitchB-Ten-GigabitEthernet1/1/2] quit
# Add a local user test.
[SwitchB] local-user test
[SwitchB-luser-test] service-type lan-access
[SwitchB-luser-test] password simple test
[SwitchB-luser-test] quit
# Enable ARP detection for VLAN 10 to check user validity based on 802.1X entries.
[SwitchB] vlan 10
[SwitchB-vlan10] arp detection enable
# Configure the upstream interface as an ARP trusted interface. By default, an interface is an untrusted interface.
[SwitchB-vlan10] interface ten-gigabitethernet 1/1/3
[SwitchB-Ten-GigabitEthernet1/1/3] arp detection trust
[SwitchB-Ten-GigabitEthernet1/1/3] quit
After the configurations are completed, ARP packets received on interfaces Ten-GigabitEthernet 1/1/1 and Ten-GigabitEthernet 1/1/2 are checked against 802.1X entries.
User validity check and ARP packet validity check configuration example
Network requirements
As shown in Figure 6, configure Switch B to perform ARP packet validity check and user validity check based on static IP source guard binding entries and DHCP snooping entries for connected hosts.
Configuration procedure
1. Add all interfaces on Switch B to VLAN 10, and specify the IP address of VLAN-interface 10 on Switch A. (Details not shown.)
2. Configure the DHCP server on Switch A, and configure DHCP address pool 0.
<SwitchA> system-view
[SwitchA] dhcp enable
[SwitchA] dhcp server ip-pool 0
[SwitchA-dhcp-pool-0] network 10.1.1.0 mask 255.255.255.0
3. Configure Host A (DHCP client) and Host B. (Details not shown.)
4. Configure Switch B:
# Enable DHCP snooping.
<SwitchB> system-view
[SwitchB] dhcp snooping enable
[SwitchB] interface ten-gigabitethernet 1/1/3
[SwitchB-Ten-GigabitEthernet1/1/3] dhcp snooping trust
[SwitchB-Ten-GigabitEthernet1/1/3] quit
# Enable recording of client information in DHCP snooping entries on Ten-GigabitEthernet 1/1/1.
[SwitchB] interface ten-gigabitethernet 1/1/1
[SwitchB-Ten-GigabitEthernet1/1/1] dhcp snooping binding record
[SwitchB-Ten-GigabitEthernet1/1/1] quit
# Enable ARP detection for VLAN 10.
[SwitchB] vlan 10
[SwitchB-vlan10] arp detection enable
# Configure the upstream interface as a trusted interface. By default, an interface is an untrusted interface.
[SwitchB-vlan10] interface ten-gigabitethernet 1/1/3
[SwitchB-Ten-GigabitEthernet1/1/3] arp detection trust
[SwitchB-Ten-GigabitEthernet1/1/3] quit
# Configure a static IP source guard binding entry on interface Ten-GigabitEthernet 1/1/2 for user validity check.
[SwitchB] interface ten-gigabitethernet 1/1/2
[SwitchB-Ten-GigabitEthernet1/1/2] ip source binding ip-address 10.1.1.6 mac-address 0001-0203-0607 vlan 10
[SwitchB-Ten-GigabitEthernet1/1/2] quit
# Enable ARP packet validity check by checking the MAC addresses and IP addresses of ARP packets.
[SwitchB] arp detection validate dst-mac ip src-mac
After the configurations are completed, Switch B first checks the validity of ARP packets received on Ten-GigabitEthernet 1/1/1 and Ten-GigabitEthernet 1/1/2. If the ARP packets are confirmed valid, the switch performs user validity check by using the static IP source guard binding entries and finally DHCP snooping entries.
Configuring ARP scanning and fixed ARP
ARP scanning is typically used together with the fixed ARP feature in small-scale networks.
ARP scanning automatically creates ARP entries for devices in an address range. The device performs ARP scanning in the following steps:
1. Sends ARP requests for each IP address in the address range.
2. Obtains their MAC addresses through received ARP replies.
3. Creates dynamic ARP entries.
Fixed ARP converts existing dynamic ARP entries (including those generated through ARP scanning) to static ARP entries. This feature prevents ARP entries from being modified by attackers. Static ARP entries can also be manually configured by the arp static command.
Configuration restrictions and guidelines
Follow these restrictions and guidelines when you configure ARP scanning and fixed ARP:
· IP addresses in existing ARP entries are not scanned.
· ARP scanning will take some time. To stop an ongoing scan, press Ctrl + C. Dynamic ARP entries are created based on ARP replies received before the scan is terminated.
· The arp fixup command is a one-time operation. You can use this command again to convert the dynamic ARP entries learned later to static.
· Due to the limit on the total number of static ARP entries, some dynamic ARP entries might fail the conversion.
· To delete a static ARP entry converted from a dynamic one, use the undo arp ip-address [ vpn-instance-name ] command. Use the reset arp all command to delete all ARP entries or the reset arp static command to delete all static ARP entries.
Configuration procedure
To configure ARP scanning and fixed ARP:
Step |
Command |
1. Enter system view. |
system-view |
2. Enter Layer 3 Ethernet interface, VLAN interface, Layer 3 aggregate interface view. |
interface interface-type interface-number |
3. Enable ARP scanning. |
arp scan [ start-ip-address to end-ip-address ] |
4. Return to system view. |
quit |
5. Enable fixed ARP. |
arp fixup |
Configuring ARP gateway protection
Configure this feature on interfaces not connected with a gateway to prevent gateway spoofing attacks.
When such an interface receives an ARP packet, it checks whether the sender IP address in the packet is consistent with that of any protected gateway. If yes, it discards the packet. If not, it handles the packet correctly.
Configuration guidelines
Follow these guidelines when you configure ARP gateway protection:
· You can enable ARP gateway protection for a maximum of eight gateways on an interface.
· Do not configure both the arp filter source and arp filter binding commands on an interface.
· If ARP gateway protection works with ARP detection, MFF, ARP snooping, and ARP fast-reply, ARP gateway protection applies first.
Configuration procedure
To configure ARP gateway protection:
Step |
Command |
Remarks |
|
1. Enter system view. |
system-view |
N/A |
|
2. Enter Layer 2 Ethernet interface and Layer 2 aggregate interface view. |
interface interface-type interface-number |
N/A |
|
3. Enable ARP gateway protection for the specified gateway. |
arp filter source ip-address |
By default, ARP gateway protection is disabled. |
Configuration example
Network requirements
As shown in Figure 7, Host B launches gateway spoofing attacks to Switch B. As a result, traffic that Switch B intends to send to Switch A is sent to Host B.
Configure Switch B to block such attacks.
Configuration procedure
# Configure ARP gateway protection on Switch B.
<SwitchB> system-view
[SwitchB] interface ten-gigabitethernet 1/1/1
[SwitchB-Ten-GigabitEthernet1/1/1] arp filter source 10.1.1.1
[SwitchB-Ten-GigabitEthernet1/1/1] quit
[SwitchB] interface ten-gigabitethernet 1/1/2
[SwitchB-Ten-GigabitEthernet1/1/2] arp filter source 10.1.1.1
Verifying the configuration
# Verify that Ten-GigabitEthernet 1/1/1 and Ten-GigabitEthernet 1/1/2 discard the incoming ARP packets whose sender IP address is the IP address of the gateway.
Configuring ARP filtering
The ARP filtering feature can prevent gateway spoofing and user spoofing attacks.
An interface enabled with this feature checks the sender IP and MAC addresses in a received ARP packet against permitted entries. If a match is found, the packet is handled correctly. If not, the packet is discarded.
Configuration guidelines
Follow these guidelines when you configure ARP filtering:
· You can configure a maximum of eight permitted entries on an interface.
· Do not configure both the arp filter source and arp filter binding commands on an interface.
· If ARP filtering works with ARP detection, MFF, ARP snooping, and ARP fast-reply, ARP filtering applies first.
Configuration procedure
To configure ARP filtering:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. Enter Layer 2 Ethernet interface or Layer 2 aggregate interface view. |
interface interface-type interface-number |
N/A |
3. Enable ARP filtering and configure a permitted entry. |
arp filter binding ip-address mac-address |
By default, ARP filtering is disabled. |
Configuration example
Network requirements
As shown in Figure 8, the IP and MAC addresses of Host A are 10.1.1.2 and 000f-e349-1233, respectively. The IP and MAC addresses of Host B are 10.1.1.3 and 000f-e349-1234, respectively.
Configure ARP filtering on Ten-GigabitEthernet 1/1/1 and Ten-GigabitEthernet 1/1/2 of Switch B to permit ARP packets from only Host A and Host B.
Configuration procedure
# Configure ARP filtering on Switch B.
<SwitchB> system-view
[SwitchB] interface ten-gigabitethernet 1/1/1
[SwitchB-Ten-GigabitEthernet1/1/1] arp filter binding 10.1.1.2 000f-e349-1233
[SwitchB-Ten-GigabitEthernet1/1/1] quit
[SwitchB] interface ten-gigabitethernet 1/1/2
[SwitchB-Ten-GigabitEthernet1/1/2] arp filter binding 10.1.1.3 000f-e349-1234
Verifying the configuration
# Verify that Ten-GigabitEthernet 1/1/1 permits ARP packets from Host A and discards other ARP packets.
# Verify that Ten-GigabitEthernet 1/1/2 permits ARP packets from Host B and discards other ARP packets.
Configuring the checking of sender IP addresses for ARP packets
This feature allows a gateway to check the sender IP address of an ARP packet before ARP learning. If the sender IP address is within the allowed IP address range, the gateway continues ARP learning. If the sender IP address is out of the range, the gateway determines the ARP packet as an attack packet and discards it.
When you specify the sender IP address range for this feature, follow these restrictions and guidelines:
· When a super VLAN is associated with sub-VLANs, you can configure this feature in the sub-VLANs to check the ARP packets in the sub-VLANs. For information about super VLANs and sub-VLANs, see Layer 2—LAN Switching Configuration Guide.
· If Layer 3 communication is configured between the specified secondary VLANs associated with a primary VLAN, configure the sender IP address range in the primary VLAN. If Layer 3 communication is not configured between the secondary VLANs associated with a primary VLAN, configure the sender IP address range in the target VLAN. For information about primary VLANs and secondary VLANs, see Layer 2—LAN Switching Configuration Guide.
To configure the checking of sender IP addresses for ARP packets:
Step |
Command |
Remarks |
1. Enter system view. |
system-view |
N/A |
2. Enter VLAN view. |
vlan vlan-id |
N/A |
3. Specify the sender IP address range for ARP packet checking. |
arp sender-ip-range start-ip-address end-ip-address |
By default, no sender IP address range is specified for ARP packet checking. |