diff --git a/kubernetes/contrib/dns-server-for-vhost-ingress-testing/deploy_dns.sh b/kubernetes/contrib/dns-server-for-vhost-ingress-testing/deploy_dns.sh
index 81533b9..657b5f9 100755
--- a/kubernetes/contrib/dns-server-for-vhost-ingress-testing/deploy_dns.sh
+++ b/kubernetes/contrib/dns-server-for-vhost-ingress-testing/deploy_dns.sh
@@ -23,9 +23,10 @@
 
 usage() {
 cat << ==usage
-$0 [cluster_domain] [helm_chart_args ...]
+$0 [cluster_domain] [lb_ip] [helm_chart_args] ...
 	[cluster_domain] Default value simpledemo.onap.org
-	[helm_chart_args...] Optional arguments passed to helm install command
+	[lb_ip] Default value LoadBalancer IP
+	[helm_chart_args] ... Optional arguments passed to helm install command
 $0 --help This message
 $0 --info Display howto configure target machine
 ==usage
@@ -44,7 +45,31 @@
 ==infodeploy
 }
 
+
+list_node_with_external_addrs()
+{
+	local WORKER_NODES=$(kubectl get no -l node-role.kubernetes.io/worker=true -o jsonpath='{.items..metadata.name}')
+	for worker in $WORKER_NODES; do
+		local external_ip=$(kubectl get no $worker  -o jsonpath='{.metadata.annotations.rke\.cattle\.io/external-ip }')
+		local internal_ip=$(kubectl get no $worker  -o jsonpath='{.metadata.annotations.rke\.cattle\.io/internal-ip }')
+		if [ $internal_ip != $external_ip ]; then
+			echo $external_ip
+			break
+		fi
+	done
+}
+
+ingress_controller_ip() {
+	local metal_ns=$(kubectl get ns --no-headers --output=custom-columns=NAME:metadata.name |grep metallb-system)
+	if [ -z $metal_ns ]; then
+		echo $CLUSTER_IP
+	else
+		list_node_with_external_addrs
+	fi
+}
+
 deploy() {
+	local ingress_ip=$(ingress_controller_ip)
 	pushd "$SPATH/bind9dns" > /dev/null
 	if [ $# -eq 0 ]; then
 		local cl_domain="simpledemo.onap.org"
@@ -52,7 +77,11 @@
 		local cl_domain=$1
 		shift
 	fi
-	helm install . --set dnsconf.wildcard="$cl_domain=$CLUSTER_IP" $@
+	if [ $# -ne 0 ]; then
+		ingress_ip=$1
+		shift
+	fi
+	helm install . --set dnsconf.wildcard="$cl_domain=$ingress_ip" $@
 	popd > /dev/null
 	target_machine_notice_info
 }
@@ -60,7 +89,7 @@
 if [[ $# -eq 1 ]] && [[ $1 == "-h" || $1 == "--help" ]]; then
 	usage
 elif [[ $# -eq 1 ]] && [[ $1 == "--info" ]]; then
-	target_machine_notice_info
+       target_machine_notice_info
 else
 	deploy $@
 fi
