Keepalived缺省检测实例的状态是用的多播,缺省什么都不设置就是多播。
其实用多播就已经很不错了,但是某些情况下还是会遇到麻烦。比如网络干脆不支持你多播,亚马逊云就禁止你多播,还有就是比较极端的,你的keepalived的routerid超过256了(virtualrouter_id的值是从0-255),这种情况下你就必须用单播。
假设是172.16.13.40和172.16.13.41两个keepalived的instance
multicatst的例子,不设置也可:
...
mcast_src_ip 172.16.13.40
...
unicast的例子:
...
unicast_src_ip 172.16.13.40
unicast_peer {
172.16.13.41
}
...
个人推荐用单播,指向明确。
缺省或者多播的情况下,在局域网内用以下命令可以看到vrrp广播:
tcpdump -s0 -v -pni eth0 host 224.0.0.18
但是如果用了unicast,就只能在13.40和13.41这两台机器上嗅探到广播包了,请注意。