Index: /src/router/services/networking/interface.c
===================================================================
--- /src/router/services/networking/interface.c	(revision 18927)
+++ /src/router/services/networking/interface.c	(revision 18928)
@@ -547,5 +547,5 @@
 		 nvram_safe_get("lan_ifnames"), nvram_safe_get("wan_ifnames"));
 #elif HAVE_DIR300
-	snprintf(all_ifnames, 255, "%s %s %s", "eth0 vlan0 vlan2",
+	snprintf(all_ifnames, 255, "%s %s %s", "eth0 vlan1 vlan2",
 		 nvram_safe_get("lan_ifnames"), nvram_safe_get("wan_ifnames"));
 #elif HAVE_MR3202A
Index: /src/router/services/networking/network.c
===================================================================
--- /src/router/services/networking/network.c	(revision 18927)
+++ /src/router/services/networking/network.c	(revision 18928)
@@ -954,8 +954,8 @@
 #ifdef HAVE_DIR300
 	if (getSTA() || getWET() || CANBRIDGE()) {
-		nvram_setz(lan_ifnames, "vlan0 vlan2 ath0");
+		nvram_setz(lan_ifnames, "vlan1 vlan2 ath0");
 		PORTSETUPWAN("");
 	} else {
-		nvram_setz(lan_ifnames, "vlan0 vlan2 ath0");
+		nvram_setz(lan_ifnames, "vlan1 vlan2 ath0");
 		PORTSETUPWAN("vlan2");
 	}
@@ -4021,6 +4021,5 @@
 		    nvram_safe_get("wan_gateway");
 		if (strcmp(gateway, "0.0.0.0")) {
-			route_add(wan_ifname, 0, gateway, NULL,
-				  "255.255.255.255");
+//			route_add(wan_ifname, 0, gateway, NULL,"255.255.255.255");
 
 			while (route_add
Index: /src/router/services/networking/wshaper.c
===================================================================
--- /src/router/services/networking/wshaper.c	(revision 18927)
+++ /src/router/services/networking/wshaper.c	(revision 18928)
@@ -844,5 +844,5 @@
 	ret = eval(script_name, "stop", "XX", "ath0");
 #elif HAVE_DIR300
-	ret = eval(script_name, "stop", "XX", "vlan0");
+	ret = eval(script_name, "stop", "XX", "vlan1");
 	ret = eval(script_name, "stop", "XX", "vlan2");
 	ret = eval(script_name, "stop", "XX", "ath0");
Index: /src/router/services/sysinit/sysinit-ca8.c
===================================================================
--- /src/router/services/sysinit/sysinit-ca8.c	(revision 18927)
+++ /src/router/services/sysinit/sysinit-ca8.c	(revision 18928)
@@ -97,5 +97,5 @@
 	struct ifreq ifr;
 	if (getRouterBrand() == ROUTER_BOARD_CA8PRO) {
-		eval("ifconfig", "eth0", "up", "promisc");	// required for vlan config
+//		eval("ifconfig", "eth0", "up", "promisc");	// required for vlan config
 		eval("/sbin/vconfig", "set_name_type", "VLAN_PLUS_VID_NO_PAD");
 		eval("/sbin/vconfig", "add", "eth0", "0");
Index: /src/router/services/sysinit/sysinit-dir300.c
===================================================================
--- /src/router/services/sysinit/sysinit-dir300.c	(revision 18927)
+++ /src/router/services/sysinit/sysinit-dir300.c	(revision 18928)
@@ -200,5 +200,5 @@
 	writeproc("/proc/sys/dev/wifi0/softled","1");
 	if (getRouterBrand() == ROUTER_BOARD_FONERA2200) {
-		eval("ifconfig", "eth0", "up", "promisc");	// required for vlan config
+//		eval("ifconfig", "eth0", "up", "promisc");	// required for vlan config
 		eval("/sbin/vconfig", "set_name_type", "VLAN_PLUS_VID_NO_PAD");
 		eval("/sbin/vconfig", "add", "eth0", "0");
@@ -227,7 +227,7 @@
 		}
 	} else {
-//      system("swconfig dev eth0 set reset 1");
-//      system("swconfig dev eth0 set enable_vlan 1");
 #ifdef HAVE_SWCONFIG
+    		system("swconfig dev eth0 set reset 1");
+    		system("swconfig dev eth0 set enable_vlan 1");
 		system("swconfig dev eth0 vlan 1 set ports \"0 1 2 3 5t\"");
 		system("swconfig dev eth0 vlan 2 set ports \"4 5t\"");
Index: /src/router/services/sysinit/sysinit-fonera.c
===================================================================
--- /src/router/services/sysinit/sysinit-fonera.c	(revision 18927)
+++ /src/router/services/sysinit/sysinit-fonera.c	(revision 18928)
@@ -125,5 +125,5 @@
 	struct ifreq ifr;
 	if (getRouterBrand() == ROUTER_BOARD_FONERA2200) {
-		eval("ifconfig", "eth0", "up", "promisc");	// required for vlan config
+//		eval("ifconfig", "eth0", "up", "promisc");	// required for vlan config
 		eval("/sbin/vconfig", "set_name_type", "VLAN_PLUS_VID_NO_PAD");
 		eval("/sbin/vconfig", "add", "eth0", "0");
Index: /src/router/services/sysinit/sysinit-rcaa01.c
===================================================================
--- /src/router/services/sysinit/sysinit-rcaa01.c	(revision 18927)
+++ /src/router/services/sysinit/sysinit-rcaa01.c	(revision 18928)
@@ -103,5 +103,5 @@
 	if (getRouterBrand() == ROUTER_BOARD_RCAA01) {
 		insmod("mvswitch");
-		eval("ifconfig", "eth0", "up", "promisc");	// required for vlan config
+//		eval("ifconfig", "eth0", "up", "promisc");	// required for vlan config
 		eval("/sbin/vconfig", "set_name_type", "VLAN_PLUS_VID_NO_PAD");
 		eval("/sbin/vconfig", "add", "eth0", "0");
