# Generat per a:
# RouterOSv3.x
:log info "Unsolclic for 9936-CampanarSudOest going to be executed."
#
# Configuration for RouterOSv3.x
# Trasto: 9936-CampanarSudOest
#
# 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.-Fitxer importat:
# Desa aquesta "sortida" a un fitxer, després puja'l al router
# fent servir FTP amb un nom de l'estil "script_name.rsc".
# (note, l'extensió ".rsc" es un requisit)
# Executa el fitxer importat amb la comanda:
# > /import script_name
# 3.-Telnet copia i enganxar:
# Open a terminal session, and cut&paste this output
# directly on the terminal input.
#
# Notes:
# -routing-test package is required if you use RouterOSv2.9 , 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=CampanarSudOest
#
# DNS (client & server cache) zone: 15561
/ip dns set primary-dns=10.145.32.11 secondary-dns=10.145.32.12 allow-remote-requests=yes
:delay 1
#
# NTP (client & server cache) zone: 15561
/system ntp client set enabled=yes mode=unicast primary-ntp=10.145.32.14
: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="Campanar"
#
# Guest user
/user
:foreach i in [find group=read] do={/user remove $i;}
add name="guest" group=read address=10.0.0.0/8 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;}
:delay 1
#
# Radio#: 0 msf2-campanar3.masquefa.net
/interface wireless set wlan1 name="wlan1" \
radio-name="msf2-campanar3.masquefa.net" mode=ap-bridge ssid="guifi.net-msf2-campanar3.masquefa.net" \
band="2.4ghz-b" \
frequency-mode=regulatory-domain country=spain antenna-gain=14 \
frequency=2452 \
dfs-mode=none \
antenna-mode=ant-a 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=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;}
#
:delay 1
#
# Radio#: 1 msf2-campanar4.masquefa.net
/interface wireless set wlan2 name="wlan2" \
radio-name="msf2-campanar4.masquefa.net" mode=ap-bridge ssid="guifi.net-msf2-campanar4.masquefa.net" \
band="2.4ghz-b" \
frequency-mode=regulatory-domain country=spain antenna-gain=14 \
frequency=2472 \
dfs-mode=none \
antenna-mode=ant-a 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
/ip address
:foreach i in [find address="10.145.34.193/27"] do={remove $i}
/ ip address add address=10.145.34.193/27 network=10.145.34.192 broadcast=10.145.34.223 interface=wlan2 disabled=no
/ routing bgp network
:foreach i in [/routing bgp network find network=10.145.34.192/27] do={/routing bgp network remove $i;}
add network=10.145.34.192/27 synchronize=no disabled=no
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wlan2] do={/routing ospf interface remove $i;}
add interface=wlan2
/ routing ospf network
:foreach i in [/routing ospf network find network=10.145.34.192/27] do={/routing ospf network remove $i;}
add network=10.145.34.192/27 area=backbone disabled=no
:delay 1
#
# DHCP
:foreach i in [/ip pool find name=dhcp-wlan2] do={/ip pool remove $i;}
/ip pool add name=dhcp-wlan2 ranges=10.145.34.199-10.145.34.222
:foreach i in [/ip dhcp-server find name=dhcp-wlan2] do={/ip dhcp-server remove $i;}
/ip dhcp-server add name=dhcp-wlan2 interface=wlan2 address-pool=dhcp-wlan2 disabled=no
:foreach i in [/ip dhcp-server network find address="10.145.34.192/27"] do={/ip dhcp-server network remove $i;}
/ip dhcp-server network add address=10.145.34.192/27 gateway=10.145.34.193 domain=guifi.net comment=dhcp-wlan2
/ip dhcp-server lease
:foreach i in [find comment=""] do={remove $i;}
:delay 1
#
: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;}
#
:delay 1
#
# Radio#: 2 msf5-campanar3.masquefa.net
/interface wireless set wlan3 name="wlan3" \
radio-name="msf5-campanar3.masquefa.net" mode=ap-bridge ssid="guifi.net-msf5-campanar3.masquefa.net" \
band="5ghz" \
frequency-mode=regulatory-domain country=spain antenna-gain=14 \
frequency=5540 \
dfs-mode=none \
antenna-mode=ant-a 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
/ip address
:foreach i in [find address="10.145.34.225/27"] do={remove $i}
/ ip address add address=10.145.34.225/27 network=10.145.34.224 broadcast=10.145.34.255 interface=wlan3 disabled=no
/ routing bgp network
:foreach i in [/routing bgp network find network=10.145.34.224/27] do={/routing bgp network remove $i;}
add network=10.145.34.224/27 synchronize=no disabled=no
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wlan3] do={/routing ospf interface remove $i;}
add interface=wlan3
/ routing ospf network
:foreach i in [/routing ospf network find network=10.145.34.224/27] do={/routing ospf network remove $i;}
add network=10.145.34.224/27 area=backbone disabled=no
:delay 1
#
# DHCP
:foreach i in [/ip pool find name=dhcp-wlan3] do={/ip pool remove $i;}
/ip pool add name=dhcp-wlan3 ranges=10.145.34.231-10.145.34.254
:foreach i in [/ip dhcp-server find name=dhcp-wlan3] do={/ip dhcp-server remove $i;}
/ip dhcp-server add name=dhcp-wlan3 interface=wlan3 address-pool=dhcp-wlan3 disabled=no
:foreach i in [/ip dhcp-server network find address="10.145.34.224/27"] do={/ip dhcp-server network remove $i;}
/ip dhcp-server network add address=10.145.34.224/27 gateway=10.145.34.225 domain=guifi.net comment=dhcp-wlan3
/ip dhcp-server lease
:foreach i in [find comment=""] do={remove $i;}
:delay 1
#
: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;}
#
:delay 1
#
# Radio#: 3 msf5-campanar4.masquefa.net
/interface wireless set wlan4 name="wlan4" \
radio-name="msf5-campanar4.masquefa.net" mode=ap-bridge ssid="guifi.net-msf5-campanar4.masquefa.net" \
band="5ghz" \
frequency-mode=regulatory-domain country=spain antenna-gain=14 \
frequency=5620 \
dfs-mode=none \
antenna-mode=ant-a 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
/ip address
:foreach i in [find address="10.145.35.1/27"] do={remove $i}
/ ip address add address=10.145.35.1/27 network=10.145.35.0 broadcast=10.145.35.31 interface=wlan4 disabled=no
/ routing bgp network
:foreach i in [/routing bgp network find network=10.145.35.0/27] do={/routing bgp network remove $i;}
add network=10.145.35.0/27 synchronize=no disabled=no
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wlan4] do={/routing ospf interface remove $i;}
add interface=wlan4
/ routing ospf network
:foreach i in [/routing ospf network find network=10.145.35.0/27] do={/routing ospf network remove $i;}
add network=10.145.35.0/27 area=backbone disabled=no
:delay 1
#
# DHCP
:foreach i in [/ip pool find name=dhcp-wlan4] do={/ip pool remove $i;}
/ip pool add name=dhcp-wlan4 ranges=10.145.35.7-10.145.35.30
:foreach i in [/ip dhcp-server find name=dhcp-wlan4] do={/ip dhcp-server remove $i;}
/ip dhcp-server add name=dhcp-wlan4 interface=wlan4 address-pool=dhcp-wlan4 disabled=no
:foreach i in [/ip dhcp-server network find address="10.145.35.0/27"] do={/ip dhcp-server network remove $i;}
/ip dhcp-server network add address=10.145.35.0/27 gateway=10.145.35.1 domain=guifi.net comment=dhcp-wlan4
/ip dhcp-server lease
:foreach i in [find comment=""] do={remove $i;}
:delay 1
#
:delay 1
# Type: wds/p2p
# Remove all existing wds interfaces
:foreach i in [/interface wireless wds find master-interface=wlan4] \
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;}
#
:delay 1
#
# Radio#: 4 CampanarSO-T-EscolaBressol
/interface wireless set wlan5 name="wlan5" \
radio-name="CampanarSO-T-EscolaBressol" mode=ap-bridge ssid="guifi.net-CampanarSO-T-EscolaBressol" \
band="5ghz" \
frequency-mode=regulatory-domain country=spain antenna-gain=14 \
frequency=5560 \
dfs-mode=none \
antenna-mode=ant-a 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=wlan5] \
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_MasquefaEscBressol" master-interface=wlan5 wds-address=00:0C:42:2B:C5:E1 disabled=no
/ ip address add address=172.17.16.162/30 network=172.17.16.160 broadcast=172.17.16.163 interface=wds_MasquefaEscBressol disabled=no comment="wds_MasquefaEscBressol"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wds_MasquefaEscBressol] do={/routing ospf interface remove $i;}
add interface=wds_MasquefaEscBressol
/ routing ospf network
:foreach i in [/routing ospf network find network=172.17.16.160/30] do={/routing ospf network remove $i;}
add network=172.17.16.160/30 area=backbone disabled=yes
/ routing bgp peer
:foreach i in [find name=MasquefaEscBressol] do={/routing bgp peer remove $i;}
add name="MasquefaEscBressol" instance=default remote-address=172.17.16.161 remote-as=9937 \
multihop=no route-reflect=no ttl=default in-filter=ebgp-in out-filter=ebgp-out disabled=no
#
:delay 1
#
# Radio#: 5 CampanarSO-T-CEIPTuro
/interface wireless set wlan6 name="wlan6" \
radio-name="CampanarSO-T-CEIPTuro" mode=ap-bridge ssid="guifi.net-CampanarSO-T-CEIPTuro" \
band="5ghz" \
frequency-mode=regulatory-domain country=spain antenna-gain=14 \
frequency=5320 \
dfs-mode=none \
antenna-mode=ant-a 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=wlan6] \
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_CEIPElTuro" master-interface=wlan6 wds-address=00:0C:42:2B:C5:FB disabled=no
/ ip address add address=172.17.16.186/30 network=172.17.16.184 broadcast=172.17.16.187 interface=wds_CEIPElTuro disabled=no comment="wds_CEIPElTuro"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wds_CEIPElTuro] do={/routing ospf interface remove $i;}
add interface=wds_CEIPElTuro
/ routing ospf network
:foreach i in [/routing ospf network find network=172.17.16.184/30] do={/routing ospf network remove $i;}
add network=172.17.16.184/30 area=backbone disabled=no
/ routing bgp peer
:foreach i in [find name=CEIPElTuro] do={/routing bgp peer remove $i;}
add name="CEIPElTuro" instance=default remote-address=172.17.16.185 remote-as=9962 \
multihop=no route-reflect=no ttl=default in-filter=ebgp-in out-filter=ebgp-out disabled=yes
#
:delay 1
#
# Radio#: 6 CampanarSO-T-Valls
/interface wireless set wlan7 name="wlan7" \
radio-name="CampanarSO-T-Valls" mode=ap-bridge ssid="guifi.net-CampanarSO-T-Valls" \
band="5ghz" \
frequency-mode=regulatory-domain country=spain antenna-gain=14 \
frequency=5700 \
dfs-mode=none \
antenna-mode=ant-a 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=wlan7] \
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_CanVallsET" master-interface=wlan7 wds-address=00:0C:42:2B:C5:CD disabled=no
/ ip address add address=172.17.16.133/30 network=172.17.16.132 broadcast=172.17.16.135 interface=wds_CanVallsET disabled=no comment="wds_CanVallsET"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wds_CanVallsET] do={/routing ospf interface remove $i;}
add interface=wds_CanVallsET
/ routing ospf network
:foreach i in [/routing ospf network find network=172.17.16.132/30] do={/routing ospf network remove $i;}
add network=172.17.16.132/30 area=backbone disabled=no
/ routing bgp peer
:foreach i in [find name=CanVallsET] do={/routing bgp peer remove $i;}
add name="CanVallsET" instance=default remote-address=172.17.16.134 remote-as=9961 \
multihop=no route-reflect=no ttl=default in-filter=ebgp-in out-filter=ebgp-out disabled=yes
#
:delay 1
#
# Radio#: 7 CampanarSud-T-AjuntamentHUB
/interface wireless set wlan8 name="wlan8" \
radio-name="CampanarSud-T-AjuntamentHUB" mode=ap-bridge ssid="guifi.net-CampanarSud-T-AjuntamentHUB" \
band="5ghz" \
frequency-mode=regulatory-domain country=spain antenna-gain=14 \
frequency=5220 \
dfs-mode=none \
antenna-mode=ant-a 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=wlan8] \
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_MasquefaAjuntamentHUB" master-interface=wlan8 wds-address=00:0C:42:3A:E9:02 disabled=yes
/ ip address add address=172.17.17.69/30 network=172.17.17.68 broadcast=172.17.17.71 interface=wds_MasquefaAjuntamentHUB disabled=yes comment="wds_MasquefaAjuntamentHUB"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=wds_MasquefaAjuntamentHUB] do={/routing ospf interface remove $i;}
add interface=wds_MasquefaAjuntamentHUB
/ routing ospf network
:foreach i in [/routing ospf network find network=172.17.17.68/30] do={/routing ospf network remove $i;}
add network=172.17.17.68/30 area=backbone disabled=no
/ routing bgp peer
:foreach i in [find name=MasquefaAjuntamentHUB] do={/routing bgp peer remove $i;}
add name="MasquefaAjuntamentHUB" instance=default remote-address=172.17.17.70 remote-as=22232 \
multihop=no route-reflect=no ttl=default in-filter=ebgp-in out-filter=ebgp-out disabled=yes
#
:delay 1
#
# Routed device
#
# Altres connexions de cable
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=ether2] do={/routing ospf interface remove $i;}
add interface=ether2
/ routing ospf network
:foreach i in [/routing ospf network find network=172.17.16.20/30] do={/routing ospf network remove $i;}
add network=172.17.16.20/30 area=backbone disabled=no
/ routing bgp peer
:foreach i in [find name=CampanarNordEst] do={/routing bgp peer remove $i;}
add name="CampanarNordEst" instance=default remote-address=172.17.16.22 remote-as=9935 \
multihop=no route-reflect=no ttl=default in-filter=ebgp-in out-filter=ebgp-out disabled=yes
:foreach i in [/ip address find address="172.17.16.21/30"] do={/ip address remove $i;}
:delay 1
/ ip address add address=172.17.16.21/30 network=172.17.16.20 broadcast=172.17.16.23 interface=ether2 disabled=no comment="CampanarNordEst"
/ routing ospf interface
:foreach i in [/routing ospf interface find interface=ether3] do={/routing ospf interface remove $i;}
add interface=ether3
/ routing ospf network
:foreach i in [/routing ospf network find network=172.17.16.24/30] do={/routing ospf network remove $i;}
add network=172.17.16.24/30 area=backbone disabled=yes
/ routing bgp peer
:foreach i in [find name=CampanarHUB] do={/routing bgp peer remove $i;}
add name="CampanarHUB" instance=default remote-address=172.17.16.25 remote-as=21727 \
multihop=no route-reflect=no ttl=default in-filter=ebgp-in out-filter=ebgp-out disabled=no
:foreach i in [/ip address find address="172.17.16.26/30"] do={/ip address remove $i;}
:delay 1
/ ip address add address=172.17.16.26/30 network=172.17.16.24 broadcast=172.17.16.27 interface=ether3 disabled=yes comment="CampanarHUB"
:foreach i in [/ip address find address="10.145.32.193/27"] do={/ip address remove $i;}
:delay 1
/ ip address add address=10.145.32.193/27 network=10.145.32.192 broadcast=10.145.32.223 interface=Lan disabled=no comment="CampanarHUB"
#
# Internal addresses NAT
:foreach i in [/ip firewall nat find src-address="172.16.0.0/12"] 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.145.32.193 comment="" disabled=no
#
# Enrutament BGP
# 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;}
:foreach i in [/routing filter find chain=ebgp-in] do={/routing filter remove $i;}
:foreach i in [/routing filter find chain=ebgp-out] do={/routing filter remove $i;}
/ routing filter
add chain=ebgp-in comment="0. Set ebgp-in preferred source." set-pref-src="10.145.32.193" disabled=no
add action=discard chain=ebgp-in comment="1. Discard insert non 10.x routes from BGP peer" disabled=no invert-match=no prefix=!10.0.0.0/8 prefix-length=8-32
add action=discard chain=ebgp-out comment="2. Discard send non 10.x routes to BGP peer" disabled=no invert-match=no prefix=!10.0.0.0/8 prefix-length=8-32
add action=accept chain=ospf-in comment="3. Accept insert 10.x routes from OSPF neighbor" disabled=no invert-match=no prefix=10.0.0.0/8 prefix-length=8-32 set-pref-src="10.145.32.193"
add action=accept chain=ospf-in comment="4. Accept insert 172.x routes from OSPF neighbor" disabled=no invert-match=no prefix=172.16.0.0/12 prefix-length=8-32
add action=discard chain=ospf-in comment="5. Discard insert non 10.x and 172.x from OSPF neighbor" disabled=no invert-match=no
add action=accept chain=ospf-out comment="6. Allow send 10.x routes to OSPF neighbor" disabled=no invert-match=no prefix=10.0.0.0/8 prefix-length=8-32
add action=accept chain=ospf-out comment="7. Allow send 172.x routes to OSPF neighbor" disabled=no invert-match=no prefix=172.16.0.0/12 prefix-length=8-32
add action=discard chain=ospf-out comment="8. Discard send non 10.x and 172.x to OSPF neighbor" disabled=no invert-match=no
#
# Instància BGP
/ routing bgp instance
set default name="default" as=9936 router-id=10.145.32.193 \
redistribute-connected=yes redistribute-static=yes redistribute-rip=yes \
redistribute-ospf=yes redistribute-other-bgp=yes out-filter=ebgp-out \
client-to-client-reflection=yes comment="" disabled=no
#
# Enrutament OSPF
/routing ospf set router-id=10.145.32.193 distribute-default=never redistribute-connected=no \
redistribute-static=no redistribute-rip=no redistribute-bgp=as-type-1
#
:log info "Unsolclic for 9936-CampanarSudOest executed."
/