[j-nsp] default uRPF strict on irb interface accepts DHCP?
Jason Lixfeld
jason-jnsp at lixfeld.ca
Wed Jul 6 11:56:57 EDT 2016
Hi,
I’m trying to understand some counterintuitive behaviour I’m seeing with uRPF strict and DHCP on a EX9200/14.2R4.9
According to the documentation[1], uRPF will not, by default, permit DHCP or BOOTP, however the actual behaviour seems to be inconsistent with the documentation:
set interfaces ge-0/2/2 speed 1g
set interfaces ge-0/2/2 hold-time up 10000
set interfaces ge-0/2/2 hold-time down 0
set interfaces ge-0/2/2 ether-options auto-negotiation
set interfaces ge-0/2/2 ether-options no-flow-control
set interfaces ge-0/2/2 unit 0 family ethernet-switching interface-mode access
set interfaces ge-0/2/2 unit 0 family ethernet-switching vlan members DHCP-TEST
set interfaces ge-0/2/2 unit 0 family ethernet-switching storm-control DEFAULT
set interfaces ge-0/2/2 unit 0 family ethernet-switching recovery-timeout 60
set vlans DHCP-TEST vlan-id 1000
set vlans DHCP-TEST l3-interface irb.1000
set vlans DHCP-TEST forwarding-options dhcp-security arp-inspection
set vlans DHCP-TEST forwarding-options dhcp-security ip-source-guard
set interfaces irb unit 1000 family inet rpf-check
set interfaces irb unit 1000 family inet address 69.69.69.1/24
set routing-instances INET instance-type vrf
set routing-instances INET system services dhcp-local-server group DHCP-TEST interface irb.1000
set routing-instances INET access address-assignment pool DHCP-TEST family inet network 69.69.69.0/24
set routing-instances INET access address-assignment pool DHCP-TEST family inet range DHCP-TEST low 69.69.69.2
set routing-instances INET access address-assignment pool DHCP-TEST family inet range DHCP-TEST high 69.69.69.254
set routing-instances INET access address-assignment pool DHCP-TEST family inet dhcp-attributes name-server 66.207.192.6
set routing-instances INET access address-assignment pool DHCP-TEST family inet dhcp-attributes name-server 206.223.173.7
set routing-instances INET access address-assignment pool DHCP-TEST family inet dhcp-attributes router 69.69.69.1
set routing-instances INET interface irb.1000
set routing-instances INET route-distinguisher 21949:4
set routing-instances INET vrf-target target:21949:4
ario at lab01.juniper# run show dhcp server binding routing-instance INET
[edit]
ario at lab01.juniper# run show arp vpn INET
[edit]
ario at lab01.juniper#
After I run dhclient on my Linux box, I’m served a lease with no issues at all:
ario at lab01.juniper# run show dhcp server binding routing-instance INET
IP address Session Id Hardware address Expires State Interface
69.69.69.5 15 00:0c:bd:08:80:9d 86370 BOUND irb.1000
[edit]
ario at lab01.juniper# run show interfaces irb.1000 extensive | match RPF
Flags: Sendbcast-pkt-to-re, uRPF
RPF Failures: Packets: 0, Bytes: 0
[edit]
ario at lab01.juniper# run show arp vpn INET
MAC Address Address Name Interface Flags
00:0c:bd:08:80:9d 69.69.69.5 nj-69-69-69-5.sta.embarqh irb.1000 [ge-0/2/2.0] none
[edit]
ario at lab01.juniper#
While I don’t see any specific reference in the docs to differences in behaviour using irb interfaces, is it possible there are in fact differences and I just haven’t found the correct docs that outline what they are? Or is there something else that I’m missing?
[1]http://www.juniper.net/documentation/en_US/junos14.2/topics/usage-guidelines/interfaces-configuring-unicast-rpf.html
Thanks in advance!
More information about the juniper-nsp
mailing list