Permanant ARP条目变成未解决

我们有一个解决scheme,其中一些Solaris服务器位于专用VLAN中,并且在此VLAN中不存在任何ARP代理,因此要到达相邻服务器,我们必须添加静态ARP条目。 该私有VLAN中的子网中的每个其他服务器必须指向网关的MAC地址。

例如

#!/sbin/sh ARP=/usr/sbin/arp ${ARP} -s 10.1.2.1 00:10:20:30:40:50 permanent ${ARP} -s 10.1.2.2 00:10:20:30:40:50 permanent ${ARP} -s 10.1.2.3 00:10:20:30:40:50 permanent ${ARP} -s 10.1.2.4 00:10:20:30:40:50 permanent ${ARP} -s 10.1.2.5 00:10:20:30:40:50 permanent 

给我们ARP条目:

 arp -an Net to Media Table: IPv4 Device IP Address Mask Flags Phys Addr ------ -------------------- --------------- -------- --------------- oce1 10.1.2.1 255.255.255.255 SA 00:10:20:30:40:50 oce1 10.1.2.2 255.255.255.255 SA 00:10:20:30:40:50 oce1 10.1.2.3 255.255.255.255 SA 00:10:20:30:40:50 oce1 10.1.2.4 255.255.255.255 SA 00:10:20:30:40:50 oce1 10.1.2.5 255.255.255.255 SA 00:10:20:30:40:50 

由于某种原因,我们遇到了这个问题,很快,条目将会标记“U”,然后在从ARP表中消失之前变得不可用。 在通常的日志文件中没有任何理由。 系统日志configuration:

 *.info;auth.none /var/adm/messages 

任何关于这个问题可能的build议,感激地收到所有的帮助。 Solaris 10,x86是OS。

我的第一个build议是将脚本改为“永久酒吧”而不是“永久”。

所以从这个

 #!/sbin/sh ARP=/usr/sbin/arp ${ARP} -s 10.1.2.1 00:10:20:30:40:50 permanent ${ARP} -s 10.1.2.2 00:10:20:30:40:50 permanent ${ARP} -s 10.1.2.3 00:10:20:30:40:50 permanent ${ARP} -s 10.1.2.4 00:10:20:30:40:50 permanent ${ARP} -s 10.1.2.5 00:10:20:30:40:50 permanent 

对此;

 #!/sbin/sh ARP=/usr/sbin/arp ${ARP} -s 10.1.2.1 00:10:20:30:40:50 permanent pub ${ARP} -s 10.1.2.2 00:10:20:30:40:50 permanent pub ${ARP} -s 10.1.2.3 00:10:20:30:40:50 permanent pub ${ARP} -s 10.1.2.4 00:10:20:30:40:50 permanent pub ${ARP} -s 10.1.2.5 00:10:20:30:40:50 permanent pub 

或者只是改变脚本以按照预期使用“arp -f filename ”。 从Solaris 10 arp手册页;

  OPTIONS ... -f Read the file named filename and set multiple entries in the ARP tables. Entries in the file should be of the form: hostname MACaddress [temp] [pub] [trail] [permanent] See the -s option for argument definitions. 

其次,通过更改syslog.conf设置来暂时增加syslog的详细程度,并查看发生了什么。

从这个更改syslog.conf ;

*.info;auth.none /var/adm/messages

对此;

*.info;auth.none;*.debug /var/adm/messages

然后刷新系统日志服务; svcadm -v refresh svc:/system/system-log:default

ProTIP:如果你在日志中看到这个,

ar_entry_query: Could not find the ace for source address #.#.#.#"

那么这意味着arp正在删除物理接口的条目。 我在一个月前遇到了几个有问题的接口的服务器上的相同的问题,内核补丁(120012-14)照顾它。

如果有问题的系统configuration了虚拟IP和/或端口绑定,那么还需要一些其他的补丁。