--- dhclient-script.orig	2010-11-02 00:47:55.000000000 +0200
+++ dhclient-script	2010-11-02 00:47:55.000000000 +0200
@@ -88,10 +88,25 @@
 	route $rdomain -n flush -inet -iface $interface >/dev/null 2>&1
 	for router in $new_routers; do
 		if [ "$new_ip_address" = "$router" ]; then
-			route $rdomain add default -iface $router >/dev/null 2>&1
+                       #
+			# !!! Remember to set net.inet.ip.multipath=1
+                       #
+			if [ "$interface" = "em0" ]; then
+                                route $rdomain add -mpath default \
+				-iface $router -priority 6 >/dev/null 2>&1
+                        else
+                                route $rdomain add -mpath default \
+				-iface $router -priority 8 >/dev/null 2>&1
+                        fi
 		else
-			route $rdomain add default $router >/dev/null 2>&1
-		fi
+			if [ "$interface" = "em0" ]; then
+                                route $rdomain add -mpath default \
+				$router -priority 6 >/dev/null 2>&1
+                        else
+                                route $rdomain add -mpath default \
+				$router -priority 8 >/dev/null 2>&1
+                        fi
+		fi
+		# Update next hop to pf route-to rules
+                pfctl -t gw_$interface -T flush
+                pfctl -t gw_$interface -T add $router
 		# 2nd and subsequent default routers error out, so explicitly
 		# stop processing the list after the first one.
 		break
