# Generat per a:
# RouterOSv2.9
:log info "Unsolclic for 240-VicVictoriaST133 going to be executed."
#
# Configuration for RouterOS > 2.9.50 or 3.4
# Trasto: 240-VicVictoriaST133
#
# WARNING: Beta version
#
# Methods to upload/execute this script:
# 1.-As a script. Upload this output as a script either with:
#     a.Winbox (with Linux, wine required)
#     b.Terminal (telnet, ssh...)
#    Then execute the script with:
#      > /system script run script_name
# 2.-Imported file:
#     Save this output to a file, then upload it to the router
#     using ftp using a name like "script_name.rsc".
#     (note that extension ".rsc" is required)
#     Run the import file using the command:
#      > /import script_name
# 3.-Telnet cut&paste:
#     Open a terminal session, and cut&paste this output
#     directly on the terminal input.
#
# Notes:
# -routing-test package is required, be sure you have it enabled at system packages
# -wlans should be enabled manually, be sure to set the correct antenna (a or b)
#   according in how did you connect the cable to the miniPCI. Keep the
#   power at the minimum possible and check the channel.
# -The script doesn't reset the router, you might have to do it manually
# -You must have write access to the router
# -MAC access (winbox, MAC telnet...) method is recommended
#   (the script reconfigures some IP addresses, so communication can be lost)
# -No changes are done in user passwords on the device
# -A Read Only guest account with no password will be created to allow guest access
#   to the router with no danger of damage but able to see the config.
# -Be sure that all packages are activated.
# -Don't run the script from telnet and being connected through an IP connection at
#   the wLan/Lan interface: This interface will be destroyed during the script.
#
/ system identity set name=VicVictoriaST133
#
# DNS (client & server cache) zone: 2472
/ip dns set primary-dns=10.138.160.98 secondary-dns=10.138.25.68 allow-remote-requests=yes
:delay 1
#
# NTP (client & server cache) zone: 2472
/system ntp client set enabled=yes mode=unicast primary-ntp=10.138.25.69
/system ntp server set manycast=no enabled=yes
:delay 1
#
# Bandwidth-server
/ tool bandwidth-server set enabled=yes authenticate=no allocate-udp-ports-from=2000
#
# SNMP
/snmp set contact="guifi@guifi.net" enabled=yes location="VicVictoria"
#
# Guest user
/user
:foreach i in [find group=read] do={/user remove $i;}
add name="guest" group=read address=0.0.0.0/0 comment="" disabled=no
#
# Graphing
/tool graphing interface add
# Remove current wLan/Lan bridge if exists
:foreach i in [/interface bridge find name=wLan/Lan] \
do={:foreach i in [/interface bridge port find bridge=wLan/Lan] \
do={/interface bridge port remove $i; \
:foreach i in [/ip address find interface=wLan/Lan] \
do={/ip address remove $i;};};
/interface bridge remove $i;}
# Construct main bridge on wlan1 & ether1
/ interface bridge
add name="wLan/Lan"
/ interface bridge port
add interface=ether1 bridge=wLan/Lan
add interface=wlan1 bridge=wLan/Lan
:delay 1
#
# Radio#: 0 VicVictoriaAP
/interface wireless set wlan1 name="wlan1" \
radio-name="VicVictoriaAP" mode=ap-bridge ssid="guifi.net-VicVictoriaAP" \
band="2.4ghz-b" \
frequency-mode=manual-txpower country=spain antenna-gain=0 \
frequency=2442 \
dfs-mode=none \
wds-mode=static wds-default-bridge=none wds-default-cost=100 \
wds-cost-range=50-150 wds-ignore-ssid=yes hide-ssid=no
:delay 1
# Type: wLan/Lan
/ip address
:foreach i in [find address="10.138.22.193/27"] do={remove $i}
/ ip address add address=10.138.22.193/27 network=10.138.22.192 broadcast=10.138.22.223 interface=wLan/Lan disabled=no
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wLan/Lan] do={/routing ospf interface remove $i;}
add interface=wLan/Lan
/ routing ospf network
:foreach i in [/routing ospf network find network=10.138.22.192/27] do={/routing ospf network remove $i;}
add network=10.138.22.192/27 area=backbone disabled=no
:delay 1
#
# DHCP
/ip dhcp-server lease
:foreach i in [find comment=""] do={remove $i;}
:delay 1
add address=10.138.22.194 mac-address=00:16:01:0D:18:72 client-id=VicDaniRadio1 server=dhcp-wLan/Lan
add address=10.138.22.195 mac-address=00:16:01:10:2D:4E client-id=VicXusRadio1 server=dhcp-wLan/Lan
add address=10.138.22.196 mac-address=00:14:BF:D2:72:88 client-id=VicLluisSucre server=dhcp-wLan/Lan
add address=10.138.22.197 mac-address=00:16:B6:40:F9:94 client-id=VicPerotXeviRadio1 server=dhcp-wLan/Lan
add address=10.138.22.198 mac-address=00:16:B6:11:45:E2 client-id=CalldetenesEstel server=dhcp-wLan/Lan
add address=10.138.22.199 mac-address=ff:ff:ff:ff:ff:ff client-id=StaCreuRadio1 server=dhcp-wLan/Lan
add address=10.138.22.200 mac-address=00:16:B6:1F:F4:18 client-id=VicJTorrentoRadio1 server=dhcp-wLan/Lan
add address=10.138.22.201 mac-address=00:0D:0B:D5:E5:DA client-id=VicCLauraRadio1 server=dhcp-wLan/Lan
add address=10.138.22.202 mac-address=00:18:F8:E5:FA:40 client-id=VicJFSetembreRadio1 server=dhcp-wLan/Lan
add address=10.138.22.203 mac-address=ff:ff:ff:ff:ff:ff client-id=ViccalmRadio1 server=dhcp-wLan/Lan
add address=10.138.22.204 mac-address=00:18:39:AE:7E:11 client-id=VicKasRadio1 server=dhcp-wLan/Lan
add address=10.138.22.205 mac-address=00:18:39:AE:64:8B client-id=VicGustavoRadio1 server=dhcp-wLan/Lan
add address=10.138.22.206 mac-address=ff:ff:ff:ff:ff:ff client-id=VicLaTorratxaRadio1 server=dhcp-wLan/Lan
add address=10.138.22.207 mac-address=00:16:B6:39:80:DE client-id=VicSantSixtRadio1 server=dhcp-wLan/Lan
add address=10.138.22.208 mac-address=00:13:10:7A:DC:DD client-id=VicGallissa15 server=dhcp-wLan/Lan
add address=10.138.22.209 mac-address=ff:ff:ff:ff:ff:ff client-id=SantiVerdaguerRadio1 server=dhcp-wLan/Lan
add address=10.138.22.210 mac-address=00:16:01:AE:2E:86 client-id=VicCresquesRadio1 server=dhcp-wLan/Lan
add address=10.138.22.211 mac-address=00:16:01:F2:14:24 client-id=VicBernatSPRadio1 server=dhcp-wLan/Lan
add address=10.138.22.212 mac-address=00:1C:10:13:97:E7 client-id=VicJAusioRadio1 server=dhcp-wLan/Lan
add address=10.138.22.213 mac-address=00:12:17:07:A4:9E client-id=VicHabMRius server=dhcp-wLan/Lan
add address=10.138.22.214 mac-address=00:1C:10:14:15:3F client-id=VicEscrigRadio1 server=dhcp-wLan/Lan
add address=10.138.22.215 mac-address=ff:ff:ff:ff:ff:ff client-id=VicRaquelRadio1 server=dhcp-wLan/Lan
add address=10.138.22.216 mac-address=ff:ff:ff:ff:ff:ff client-id=VicVictoriaServer server=dhcp-wLan/Lan
add address=10.138.22.217 mac-address=00:1C:10:36:50:C4 client-id=VicPepCasellesRadio1 server=dhcp-wLan/Lan
add address=10.138.22.218 mac-address=00:1C:10:36:4E:03 client-id=VicLinesfRadio1 server=dhcp-wLan/Lan
add address=10.138.22.219 mac-address=ff:ff:ff:ff:ff:ff client-id=VicVictoriaReset server=dhcp-wLan/Lan
add address=10.138.22.220 mac-address=ff:ff:ff:ff:ff:ff client-id=VicAusatelSud server=dhcp-wLan/Lan
add address=10.138.22.221 mac-address=ff:ff:ff:ff:ff:ff client-id=VicVictoriaGuixa server=dhcp-wLan/Lan
add address=10.138.22.222 mac-address=00:16:01:B0:87:F8 client-id=VicMatavacasRadio1 server=dhcp-wLan/Lan
:foreach i in [/ip dhcp-server network find address="10.138.22.192/27"] do={/ip dhcp-server network remove $i;}
:foreach i in [/ip pool find name=dhcp-wLan/Lan] do={/ip pool remove $i;}
/ip pool add name=dhcp-wLan/Lan ranges=10.138.22.222-10.138.22.222
/ip dhcp-server network add address=10.138.22.192/27 gateway=10.138.22.193 domain=guifi.net comment=dhcp-wLan/Lan
:foreach i in [/ip dhcp-server find name=dhcp-wLan/Lan] do={/ip dhcp-server remove $i;}
/ip dhcp-server add name=dhcp-wLan/Lan interface=wLan/Lan address-pool=dhcp-wLan/Lan disabled=yes
#
:delay 1
# Type: wds/p2p
# Remove all existing wds interfaces
:foreach i in [/interface wireless wds find master-interface=wlan1] \
do={:foreach n in [/interface wireless wds get $i name] \
do={:foreach inum in [/ip address find interface=$n] \
do={/ip address remove $inum;};}; \
/interface wireless wds remove $i;}
/ interface wireless wds
add name="wds_VicPere" master-interface=wlan1 wds-address=00:12:17:D4:B5:7C disabled=no
/ ip address add address=172.25.2.158/30 network=172.25.2.156 broadcast=172.25.2.159 interface=wds_VicPere disabled=no comment="wds_VicPere"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wds_VicPere] do={/routing ospf interface remove $i;}
add interface=wds_VicPere
/ routing ospf network
:foreach i in [/routing ospf network find network=172.25.2.156/30] do={/routing ospf network remove $i;}
add network=172.25.2.156/30 area=backbone disabled=no
/ routing bgp peer
:foreach i in [find name=VicPere] do={/routing bgp peer remove $i;}
add name="VicPere" instance=default remote-address=172.25.2.157 remote-as=175 \
multihop=no route-reflect=no ttl=1 in-filter=ospf-in out-filter=ospf-out disabled=yes
/ interface wireless wds
add name="wds_VicImpevic" master-interface=wlan1 wds-address=00:0F:66:D9:B8:D6 disabled=no
/ ip address add address=172.25.2.189/30 network=172.25.2.188 broadcast=172.25.2.191 interface=wds_VicImpevic disabled=no comment="wds_VicImpevic"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wds_VicImpevic] do={/routing ospf interface remove $i;}
add interface=wds_VicImpevic
/ routing ospf network
:foreach i in [/routing ospf network find network=172.25.2.188/30] do={/routing ospf network remove $i;}
add network=172.25.2.188/30 area=backbone disabled=no
/ routing bgp peer
:foreach i in [find name=VicImpevic] do={/routing bgp peer remove $i;}
add name="VicImpevic" instance=default remote-address=172.25.2.190 remote-as=47 \
multihop=no route-reflect=no ttl=1 in-filter=ospf-in out-filter=ospf-out disabled=yes
/ interface wireless wds
add name="wds_UVicTFrares" master-interface=wlan1 wds-address=00:12:17:07:A4:9C disabled=no
/ ip address add address=172.25.10.54/30 network=172.25.10.52 broadcast=172.25.10.55 interface=wds_UVicTFrares disabled=no comment="wds_UVicTFrares"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wds_UVicTFrares] do={/routing ospf interface remove $i;}
add interface=wds_UVicTFrares
/ routing ospf network
:foreach i in [/routing ospf network find network=172.25.10.52/30] do={/routing ospf network remove $i;}
add network=172.25.10.52/30 area=backbone disabled=no
/ routing bgp peer
:foreach i in [find name=UVicTFrares] do={/routing bgp peer remove $i;}
add name="UVicTFrares" instance=default remote-address=172.25.10.53 remote-as=126 \
multihop=no route-reflect=no ttl=1 in-filter=ospf-in out-filter=ospf-out disabled=yes
#
:delay 1
# Type: wLan
/ip address
:foreach i in [find address="10.138.160.193/27"] do={remove $i}
/ ip address add address=10.138.160.193/27 network=10.138.160.192 broadcast=10.138.160.223 interface=wlan1 disabled=no
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wlan1] do={/routing ospf interface remove $i;}
add interface=wlan1
/ routing ospf network
:foreach i in [/routing ospf network find network=10.138.160.192/27] do={/routing ospf network remove $i;}
add network=10.138.160.192/27 area=backbone disabled=no
:delay 1
#
# DHCP
/ip dhcp-server lease
:foreach i in [find comment=""] do={remove $i;}
:delay 1
:foreach i in [/ip dhcp-server network find address="10.138.160.192/27"] do={/ip dhcp-server network remove $i;}
:foreach i in [/ip pool find name=dhcp-wlan1] do={/ip pool remove $i;}
/ip pool add name=dhcp-wlan1 ranges=10.138.160.199-10.138.160.222
/ip dhcp-server network add address=10.138.160.192/27 gateway=10.138.160.193 domain=guifi.net comment=dhcp-wlan1
:foreach i in [/ip dhcp-server find name=dhcp-wlan1] do={/ip dhcp-server remove $i;}
/ip dhcp-server add name=dhcp-wlan1 interface=wlan1 address-pool=dhcp-wlan1 disabled=no
#
:delay 1
#
# Radio#: 1 VicVictoriaST133-CEPA
/interface wireless set wlan2 name="wlan2" \
radio-name="VicVictoriaST133-CEPA" mode=ap-bridge ssid="guifi.net-VicVictoriaST133-CEPA" \
band="5ghz" \
frequency-mode=manual-txpower country=spain antenna-gain=0 \
frequency=5600 \
dfs-mode=none \
wds-mode=static wds-default-bridge=none wds-default-cost=100 \
wds-cost-range=50-150 wds-ignore-ssid=yes hide-ssid=no
:delay 1
# Type: wds/p2p
# Remove all existing wds interfaces
:foreach i in [/interface wireless wds find master-interface=wlan2] \
do={:foreach n in [/interface wireless wds get $i name] \
do={:foreach inum in [/ip address find interface=$n] \
do={/ip address remove $inum;};}; \
/interface wireless wds remove $i;}
/ interface wireless wds
add name="wds_GurbCEPAST3" master-interface=wlan2 wds-address=00:13:10:15:1C:E2 disabled=no
/ ip address add address=172.25.10.201/30 network=172.25.10.200 broadcast=172.25.10.203 interface=wds_GurbCEPAST3 disabled=no comment="wds_GurbCEPAST3"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wds_GurbCEPAST3] do={/routing ospf interface remove $i;}
add interface=wds_GurbCEPAST3
/ routing ospf network
:foreach i in [/routing ospf network find network=172.25.10.200/30] do={/routing ospf network remove $i;}
add network=172.25.10.200/30 area=backbone disabled=yes
/ routing bgp peer
:foreach i in [find name=GurbCEPAST3] do={/routing bgp peer remove $i;}
add name="GurbCEPAST3" instance=default remote-address=172.25.10.202 remote-as=2407 \
multihop=no route-reflect=no ttl=1 in-filter=ospf-in out-filter=ospf-out disabled=no
#
:delay 1
#
# Radio#: 2 VicVictoriaST133-JCM
/interface wireless set wlan3 name="wlan3" \
radio-name="VicVictoriaST133-JCM" mode=ap-bridge ssid="guifi.net-VicVictoriaST133-JCM" \
band="5ghz" \
frequency-mode=manual-txpower country=spain antenna-gain=0 \
frequency=5580 \
dfs-mode=none \
wds-mode=static wds-default-bridge=none wds-default-cost=100 \
wds-cost-range=50-150 wds-ignore-ssid=yes hide-ssid=no
:delay 1
# Type: wds/p2p
# Remove all existing wds interfaces
:foreach i in [/interface wireless wds find master-interface=wlan3] \
do={:foreach n in [/interface wireless wds get $i name] \
do={:foreach inum in [/ip address find interface=$n] \
do={/ip address remove $inum;};}; \
/interface wireless wds remove $i;}
/ interface wireless wds
add name="wds_VicJCM" master-interface=wlan3 wds-address=00:0B:6B:84:AD:7C disabled=no
/ ip address add address=172.25.10.229/30 network=172.25.10.228 broadcast=172.25.10.231 interface=wds_VicJCM disabled=no comment="wds_VicJCM"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wds_VicJCM] do={/routing ospf interface remove $i;}
add interface=wds_VicJCM
/ routing ospf network
:foreach i in [/routing ospf network find network=172.25.10.228/30] do={/routing ospf network remove $i;}
add network=172.25.10.228/30 area=backbone disabled=yes
/ routing bgp peer
:foreach i in [find name=VicJCM] do={/routing bgp peer remove $i;}
add name="VicJCM" instance=default remote-address=172.25.10.230 remote-as=330 \
multihop=no route-reflect=no ttl=1 in-filter=ospf-in out-filter=ospf-out disabled=no
#
:delay 1
#
# Routed device
#
# Other cable connections
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=ether1] do={/routing ospf interface remove $i;}
add interface=ether1
/ routing ospf network
:foreach i in [/routing ospf network find network=10.138.160.160/27] do={/routing ospf network remove $i;}
add network=10.138.160.160/27 area=backbone disabled=no
/ routing bgp peer
:foreach i in [find name=VicVictoriaST532] do={/routing bgp peer remove $i;}
add name="VicVictoriaST532" instance=default remote-address=10.138.160.161 remote-as=9009 \
multihop=no route-reflect=no ttl=1 in-filter=ospf-in out-filter=ospf-out disabled=yes
:foreach i in [/ip address find address="10.138.160.162/27"] do={/ip address remove $i;}
:delay 1
/ ip address add address=10.138.160.162/27 network=10.138.160.160 broadcast=10.138.160.191 interface=ether1 disabled=no comment="VicVictoriaST532"
#
# Internal addresses NAT
:foreach i in [/ip firewall nat find src-address="172.25.0.0/16"] do={/ip firewall nat remove $i;}
:foreach i in [/ip firewall nat find src-address="192.168.0.0/16"] do={/ip firewall nat remove $i;}
/ip firewall nat
add chain=srcnat src-address="192.168.0.0/16" dst-address=!192.168.0.0/16 action=src-nat to-addresses=10.138.160.193 to-ports=0-65535 comment="" disabled=no
add chain=srcnat src-address="172.25.0.0/16" dst-address=!172.25.0.0/16 protocol=!ospf action=src-nat to-addresses=10.138.160.193 to-ports=0-65535 comment="" disabled=no
#
# BGP Routing
# BGP & OSPF Filters
:foreach i in [/routing filter find chain=ospf-in] do={/routing filter remove $i;}
:foreach i in [/routing filter find chain=ospf-out] do={/routing filter remove $i;}
/ routing filter
add chain=ospf-out prefix=10.0.0.0/8 prefix-length=8-32 invert-match=no action=accept comment="" disabled=no
add chain=ospf-out invert-match=no action=discard comment="" disabled=no
add chain=ospf-in prefix=10.0.0.0/8 prefix-length=8-32 invert-match=no action=accept comment="" disabled=no
add chain=ospf-in invert-match=no action=reject comment="" disabled=no
#
# BGP instance
/ routing bgp instance
set default name="default" as=240 router-id=10.138.160.193 redistribute-static=yes \
redistribute-connected=yes redistribute-rip=yes redistribute-ospf=yes \
redistribute-other-bgp=yes out-filter=ospf-out \
client-to-client-reflection=yes comment="" disabled=no
#
# OSPF Routing
/routing ospf set router-id=10.138.160.193 redistribute-connected=as-type-1 redistribute-static=as-type-1 redistribute-bgp=as-type-1
#
:log info "Unsolclic for 240-VicVictoriaST133 executed."
/