Hello,
I rewritten the Mikrotik router script so it relies less on interactions
with RouterOS and processes mainly lists in memory.
So the speed significantly increased, an update check without changes on my
RB110AHx2 taking 4 seconds.
A full table and tunnel setup takes less than 1 min.
On a single core ARM, an update check takes less than 10 seconds.
The introduced delay will increase the runtime. Still on the RB1100 it takes
only 12 seconds for a check, and some 30 sec on the ARM, while the processor
load is quite small (15-20% on the RB1100).
Download links (rsc script):
http://www.yo2loj.ro/hamprojects/ampr-gw-2.0.rschttp://yo2tm.ampr.org/hamprojects/ampr-gw-2.0.rsc
Only main script as text file:
http://www.yo2loj.ro/hamprojects/ampr-gw-2.0.txthttp://yo2tm.ampr.org/hamprojects/ampr-gw-2.0.txt
Have fun,
Marius, YO2LOJ
Does somebody know a trick so that the postfix smtp server will accept a
particular illigal sender address.
(= ax25 hierarchical address of my bbs) so avoiding error 501.
I'm popping fbb and bpq for personal mail with fetchmail.
73,
Bob VE3TOK
To mitigate this, I generally Deny by default - login/access to my AMPR hosts from 44.0.0.0/8 addresses or to the specific port/protocol (e.g. tcp/22 Denied by default from tun0, etc.)
- Lynwood
KB3VWG
Hi there
Is the AMPR.ORG (44.0.0.1) answer for ping request from 44 net address ?
for me it answer only from non 44 net ..
It has no tunnel route in the portal and therefore the packets not entering to the tunnel like any other 44 net
Should i have a specific route for it ?
2) from non amprnet this is what i get when i do ping to 44.0.0.1 is it correct or is it a problem ?
Pinging 44.0.0.1 with 32 bytes of data:
Reply from 44.0.0.1: bytes=32 time=410ms TTL=45
Request timed out.
Reply from 44.0.0.1: bytes=32 time=297ms TTL=45
Request timed out.
Reply from 44.0.0.1: bytes=32 time=256ms TTL=45
Request timed out.
Reply from 44.0.0.1: bytes=32 time=238ms TTL=45
Request timed out.
Reply from 44.0.0.1: bytes=32 time=402ms TTL=45
Request timed out.
Reply from 44.0.0.1: bytes=32 time=295ms TTL=45
Request timed out.
Thanks Forward
Ronen - 4Z4ZQ
http://www.ronen.org
Ronen Pinchooks (4Z4ZQ) WebSite<http://www.ronen.org/>
www.ronen.orgronen.org (Ronen Pinchooks (4Z4ZQ) WebSite) is hosted by domainavenue.com
> Subject:
> [44net] Mikrotik RIPv2 AMPR Gateway Setup Script 2.0
> From:
> "Marius Petrescu" <marius(a)yo2loj.ro>
> Date:
> 04/12/2016 08:44 PM
>
> To:
> "AMPRNet working group" <44net(a)hamradio.ucsd.edu>
>
>
> Hello,
>
> I rewritten the Mikrotik router script so it relies less on interactions with RouterOS and processes mainly lists in memory.
> So the speed significantly increased, an update check without changes on my RB110AHx2 taking 4 seconds.
> A full table and tunnel setup takes less than 1 min.
> On a single core ARM, an update check takes less than 10 seconds.
That is great Marius!
Always nice to see spectacular increases in performance in an existing program :-)
This should make it usable in practice.
Let's see how it works on Ronen's small router!
(maybe I do an experiment myself on a RB951G or RB750 when I can borrow it for this purpose)
Rob
Marius,
Do you have any explanation why the script requires a powerful router?
Is it just the general inefficiency of the MikroTik scripting language execution, is there some
operation called by the script that takes a lot of CPU, or is there a chance that by using a
more efficient algorithm (e.g. optimization of the case that nothing changes for an entry) a
lot of performance could be gained?
I ask this because your approach is of course the easiest to have everything integrated on a
single router, vs two alternatives that could be considered:
- run a Metarouter which does the multipoint IPIP tunneling and runs ampr-ripd
- run a Metarouter which runs the python scripts that update the config on the main router
Rob
> Yes, you do it by applying a routing mark, then have a different route
> table for the mark. Here is an article about it
Besides the generic method of using the Mangle table to apply a routing mark, there
is also the simpler method of using IP->Routes->Rules to directly select a routing
table based on a source address/network.
Rob
Hi there
Is there any way to do source address based routing in the miKrotik ?
The idea is to route only local 44 net trafic to the tunnel and other adress spaces that live on the network to route directly to the internet ?
If yes (im almost sure Mikrotik can do it) how ?
What is the command syntax ?
Thanks Forward
Ronen - 4Z4ZQ
http://www.ronen.org
Ronen Pinchooks (4Z4ZQ) WebSite<http://www.ronen.org/>
www.ronen.orgronen.org (Ronen Pinchooks (4Z4ZQ) WebSite) is hosted by domainavenue.com
Hello,
I just updated the gateway setup scripts for Mikrotik routers to make the system more robust.
It now consists of 2 scripts:
- the parent script (update_amprgw) which is scheduled every 5 minutes, on 1 min pat the RIP announcement
- the actual update script (ampr_gw) which called from the parent script
The parent script will:
- prevent run overlaps
- after 3 unsuccessful schedules will consider the update script failed end will enforce a run
- it will prevent tunnel updates if less than 100 RIPv2 routes are available
The scripts and schedule entry are in Mikrotik export format.
The file can be copied into the router and loaded using the import command or the content copy/pasted into the console.
After this step, edit your config in the ampr_gw script under system->scripts and enable the scheduler entry (disabled by default).
Download from:
http://www.yo2loj.ro/hamprojects/ampr-gw-1.5.rschttp://yo2tm.ampr.org/hamprojects/ampr-gw-1.5.rsc
Have fun,
Marius, YO2LOJ