Using firmware version v5.3.3 there is no way to set management VLAN using a browser, but it can be easily set using SSH in a couple of steps as described below.

This blog post is now obsolete.

Edit rc.poststart script:

# vi /etc/persistent/rc.poststart

For example to set IP address 10.1.2.3 on vlan 123 and remove general IP address set in browser you can use such commands:

vconfig add br0 123
ifconfig br0.123 10.1.2.3 netmask 255.255.255.0 up
ifconfig br0 0.0.0.0

Make rc.poststart file executable and check changes:

XM.v5.3.3# chmod +x /etc/persistent/rc.poststart
XM.v5.3.3# /etc/persistent/rc.poststart

Store changes to flash if everything works as expected:

XM.v5.3.3# cfgmtd -w -p /etc/
Found Backup1 on[1] ...
Found  Active on[2] ...
Storing Active[1] ... [%100]
Active->Backup[2] ... [%100]

Reboot device:

XM.v5.3.3# reboot

ifconfig output:

XM.v5.3.3# ifconfig
ath0      Link encap:Ethernet  HWaddr 00:27:22:11:11:11
          UP BROADCAST RUNNING PROMISC ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:381 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2299 errors:0 dropped:62 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:47931 (46.8 KiB)  TX bytes:222735 (217.5 KiB)
br0       Link encap:Ethernet  HWaddr 00:27:22:11:11:11
          UP BROADCAST RUNNING ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:2086 errors:0 dropped:0 overruns:0 frame:0
          TX packets:181 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:209570 (204.6 KiB)  TX bytes:69112 (67.4 KiB)
br0.101   Link encap:Ethernet  HWaddr 00:27:22:11:11:11
          inet addr:10.1.2.3  Bcast:10.1.2.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:201 errors:0 dropped:0 overruns:0 frame:0
          TX packets:181 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:23315 (22.7 KiB)  TX bytes:69112 (67.4 KiB)
eth0      Link encap:Ethernet  HWaddr 00:27:22:22:22:22
          UP BROADCAST RUNNING PROMISC ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:2586 errors:0 dropped:0 overruns:0 frame:0
          TX packets:563 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500
          RX bytes:295818 (288.8 KiB)  TX bytes:116621 (113.8 KiB)
eth1      Link encap:Ethernet  HWaddr 02:27:22:22:22:22
          UP BROADCAST PROMISC ALLMULTI MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
wifi0     Link encap:Ethernet  HWaddr 00:27:22:11:11:11
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:48 Memory:b0000000-b0010000

Update

Since AirOS 5.5 everything can be done using browser.

Check this post