49 lines
1.1 KiB
Diff
49 lines
1.1 KiB
Diff
---
|
|
heartbeat/IPaddr2 | 21 ++++++++++++++++++---
|
|
1 file changed, 18 insertions(+), 3 deletions(-)
|
|
|
|
--- a/heartbeat/IPaddr2
|
|
+++ b/heartbeat/IPaddr2
|
|
@@ -661,7 +661,12 @@ ip_start() {
|
|
local ip_status=`ip_served`
|
|
|
|
if [ "$ip_status" = "ok" ]; then
|
|
- exit $OCF_SUCCESS
|
|
+ if [ -n "`ip link show $NIC | grep \"state UP\"`" ]
|
|
+ then
|
|
+ exit $OCF_SUCCESS
|
|
+ else
|
|
+ exit $OCF_ERR_GENERIC
|
|
+ fi
|
|
fi
|
|
|
|
if [ -n "$IP_CIP" ] && [ $ip_status = "no" ] || [ $ip_status = "partial2" ]; then
|
|
@@ -714,7 +719,12 @@ ip_start() {
|
|
fi
|
|
;;
|
|
esac
|
|
- exit $OCF_SUCCESS
|
|
+ if [ -n "`ip link show $NIC | grep \"state UP\"`" ]
|
|
+ then
|
|
+ exit $OCF_SUCCESS
|
|
+ else
|
|
+ exit $OCF_ERR_GENERIC
|
|
+ fi
|
|
}
|
|
|
|
ip_stop() {
|
|
@@ -788,7 +798,12 @@ ip_monitor() {
|
|
local ip_status=`ip_served`
|
|
case $ip_status in
|
|
ok)
|
|
- return $OCF_SUCCESS
|
|
+ if [ -n "`ip link show $NIC | grep \"state UP\"`" ]
|
|
+ then
|
|
+ return $OCF_SUCCESS
|
|
+ else
|
|
+ return $OCF_NOT_RUNNING
|
|
+ fi
|
|
;;
|
|
partial|no|partial2)
|
|
exit $OCF_NOT_RUNNING
|