02_network 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #!/bin/sh
  2. . /lib/functions/system.sh
  3. . /lib/functions/uci-defaults.sh
  4. ath79_setup_interfaces()
  5. {
  6. local board="$1"
  7. case "$board" in
  8. mikrotik,routerboard-493g)
  9. ucidef_set_interfaces_lan_wan "eth0.1 eth1.1" "eth0.2"
  10. ucidef_add_switch "switch0" \
  11. "0@eth0" "1:lan:4" "2:lan:1" "3:lan:3" "4:lan:2" "5:wan"
  12. ucidef_add_switch "switch1" \
  13. "0@eth1" "1:lan:4" "2:lan:1" "3:lan:2" "4:lan:3"
  14. ;;
  15. mikrotik,routerboard-922uags-5hpacd|\
  16. mikrotik,routerboard-wap-g-5hact2hnd)
  17. ucidef_set_interface_lan "eth0"
  18. ;;
  19. *)
  20. ucidef_set_interfaces_lan_wan "eth0" "eth1"
  21. ;;
  22. esac
  23. }
  24. ath79_setup_macs()
  25. {
  26. local board="$1"
  27. local lan_mac=""
  28. local wan_mac=""
  29. local label_mac=""
  30. local mac_base="$(cat /sys/firmware/mikrotik/hard_config/mac_base)"
  31. case "$board" in
  32. mikrotik,routerboard-wap-g-5hact2hnd)
  33. label_mac="$mac_base"
  34. lan_mac="$mac_base"
  35. ;;
  36. *)
  37. label_mac="$mac_base"
  38. wan_mac="$mac_base"
  39. lan_mac=$(macaddr_add $mac_base 1)
  40. ;;
  41. esac
  42. [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
  43. [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
  44. [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
  45. }
  46. board_config_update
  47. board=$(board_name)
  48. ath79_setup_interfaces $board
  49. ath79_setup_macs $board
  50. board_config_flush
  51. exit 0