这真是个奇怪的问题。
我试图安装一个Juniper SRX 220 H作为网关,以取代我的旧思科路由器在我的测试网络环境。简化的拓扑如下:
ISP ----- ONT ----- SRX ----- Other devices (Routers, switches, client computers...)
从ISP到SRX的链路是802.1Q主干链路,包含两个VLAN(用于Internet接入的VLAN 35,DHCP分配的IP地址,租赁时间为20分钟)。用于IPTV的VLAN 34,这里不使用)。
SRX首先可以从ISP获得IP地址。在12到17分钟后(在第一次DHCP租约续订和第二次续约之前),SRX失去了Internet访问(不能打开网关)。在系统日志或系统状态中没有什么特别的,甚至没有通知。“显示界面”说一切都很好。但在ge-0/0/0中根本没有流量。如果我拔掉电缆或重新启动SRX,它会工作12到17分钟,然后所有的交通将再次停止。
在安装此SRX之前,配置相同的旧Cisco路由器可以正常工作,没有任何问题。
有什么线索吗?
SRX的部分配置如下:
interfaces {
ge-0/0/0 {
unit 0 {
family ethernet-switching {
port-mode trunk;
vlan {
members vlan-internet;
}
}
}
}
ge-0/0/1 {
unit 0 {
family ethernet-switching {
vlan {
members vlan-trust;
}
}
}
vlan {
mac xx:xx:xx:xx:xx:xx;
unit 0 {
family inet {
address 192.168.99.254/24;
}
}
unit 35 {
family inet {
dhcp;
}
}
}
}
vlans {
vlan-internet {
vlan-id 35;
l3-interface vlan.35;
}
vlan-trust {
vlan-id 3;
l3-interface vlan.0;
}
}
相应的Cisco配置:
interface GigabitEthernet0/0
description WAN
mac-address xxxx.xxxx.xxxx
no ip address
duplex auto
speed auto
media-type rj45
no negotiation auto
!
interface GigabitEthernet0/0.35
description FibreOP-Internet
encapsulation dot1Q 35
ip address dhcp
ip nat outside
ip virtual-reassembly in
!
我更换了连接ISP和SRX 0/0/0的电缆。没什么好的。
我配置了一个备用思科交换机来模拟我的ISP环境。设置VLAN中继线和相同的DHCP租赁期限。然后我把SRX的ge-0/0/0连接到那个开关上。SRX的配置保持不变。在本实验中,SRX行为正常。这让我很困惑。
@ryanklein请求的输出
root@Firewall> show dhcp client statistics
warning: dhcp-service subsystem not running - not needed by configuration.
root@Firewall> show dhcp client binding
warning: dhcp-service subsystem not running - not needed by configuration.
@ryanklein请求的输出
root@Firewall> show system services dhcp statistics
Packets dropped:
Total 0
Messages received:
BOOTREQUEST 0
DHCPDECLINE 0
DHCPDISCOVER 0
DHCPINFORM 0
DHCPRELEASE 0
DHCPREQUEST 0
Messages sent:
BOOTREPLY 0
DHCPOFFER 0
DHCPACK 0
DHCPNAK 0
root@Firewall> show system services dhcp client
Logical Interface name vlan.35
Hardware address xx:xx:xx:xx:xx:xx
Client status bound
Address obtained 142.xxx.xxx.xxx
Update server disabled
Lease obtained at 2015-01-18 03:35:47 NST
Lease expires at 2015-01-18 03:55:47 NST
DHCP options:
Code: 1, Type: ip-address, Value: 255.255.252.0
Name: server-identifier, Value: 142.yyy.yyy.yyy
Name: router, Value: [ 142.xxx.xxx.1 ]
Name: name-server, Value: [ 47.55.55.55, 142.166.166.166 ]
root@Firewall>
我捕获了SRX和ISP之间的数据,发现一些可能有用的东西。
更新拓扑图(在SRX和ISP之间添加缺失的ONT设备)。
发布于 2015-01-23 02:38:46
我终于解决了这个问题。通过捕获和比较从JunOS和Cisco发送的DHCP发现数据包,我发现Cisco默认发送选项64客户端标识符和选项12主机名。但是,如果没有明确的指令,JunOS将不会发送它们。
我想我的ISP在他们这边设置了一个过滤器什么的。上述两种选择都是强制性的。当我配置我的SRX来发送它们时,一切都通过了。
发布于 2015-01-17 18:39:01
您可能需要确认的一件事是,SRX正在使用适当的DHCPREQUEST来更新地址,而不是另一个DHCPDISCOVER。
下面是如何启用调试。
http://kb.juniper.net/InfoCenter/index?page=content&id=KB26748#DHCP_客户端
我在Juniper方面的经验有限,但我看到至少有一个主要的操作系统在系统时钟不正确的时候这样做。
至少,你想看看更新过程中发生了什么。
https://networkengineering.stackexchange.com/questions/16190
复制相似问题