Szóval, próbálok upgradelni 6.49-ről 7-re, talán már működőképes, de a történtek után azért vannak még fenntartásaim....
Viszont van egy markáns probléma, amit egyszerűen nem tudok megoldani (vagy még mindig valami bug): több internetkapcsolat (jelen esetben 3), connection és routing mark. Ugye 7-esben ezt a routingot rendesen megborították, úgyhogy ami korábban ment, az most nem megy... Illetve nem egészen, mindjárt vázolom.
Aminek mennie kell:
- mindhárom kapcsolat él és online
- mindhárom kapcsolaton működjön a bejövő kapcsolat (mikrotikre) és a port forwardok is, nyilván ott menjen a válasz, ahol bejött
- a belső hálózatról prioritás alapján van sorrend, amíg az elsődleges megy, addig azon megy alapból minden, amikor megáll, akkor nyilván a másodlagoson, ha az is, akkor a harmadlagoson; mindemellett mindaddig amíg él a kapcsolat, addig az azon a neten menjen, amin elindult
- legyen lehetőség dinamikusan netkapcsolat váltásra, tehát attól még hogy az elsődleges megy és az a default, mehet valaki a másodlagoson vagy harmadlagoson, ha akar
Ebből ami nem megy, az a kintről mikrotikre irányuló (ping, ssh, vpn) forgalom jelölése (vagyis nem feltétlen a jelölése), illetve a mikrotikről kifele menő forgalom jelölése (pl. dns).
Szóval a firewall mangle táblában történik a kapcsolatok jelölése, a routing mark beállítása. A jelenség pedig az, hogy kívülről pingelve a másodlagos vagy harmadlagos net ip-jét, az első ICMP-re megjön a válasz, a többire nem. Telepakolva logolásokkal a manglet arra jutottam, hogy az első packet végigmegy a mangle bejegyzésein ahogy kell, a többi viszont egyáltalán nem, illetve az első packetnél a connectionre beállított routing markot is lekulázza, és második icmp-től kezdődően simán az elsődlegesen küldené a választ.
Próbáltam keresni, elolvastam a doksit, televan szerintem életszerűtlen és/vagy számomra haszontalan példákkal, néztem fórumokat ahol mások is hasonlóra panaszkodnak.... megnéztem, nem jutottam előrébb és igazából nem is értem.
Egyelőre nem akarok ideömleszteni minden konfigot, kérdezzetek, kérjetek, aztán mutatom. :)
- 1684 megtekintés
Hozzászólások
Nekem van egy tesztkonfigom 3 WAN kapcsolatra ROS7.4-re, de már nem tudnám elmagyarázni :D
- A hozzászóláshoz be kell jelentkezni
És működik minden fent leírt dolog?
Ha tudsz konfigot adni, megpróbálok kihámozni belőle valamit...
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
Háát, elvileg kellene :), kicsit takarítottam pár felesleges meg privát infót.
Annyi, hogy azért van 6 felé osztva a PCC szabály, mert így be lehet lőni súlyozást, hogy az egyik ISP-hez mondjuk lehet hármat, a másikhoz kettőt a harmadikhoz egyet. Amikor próbáltam valamennyire érződött, hogy működik a dolog, de biztos lehet és kell is finomítani rajta. Valamint azért van külön az output-ra is, mert szerettem volna, hogy maga a router is a saját forgalmát (NTP/DNS/ésatöbbi) így ossza fel. A többire már nem emlékszem :D Akkor azon az eszközön azzal a ROS7.4 bétával működött :D
Ja és DHCP kliens módban vannak az ISP lábak, de úgy rémlik PPP-hez nem kellett volna sokat módosítani.
# jun/24/2022 14:24:18 by RouterOS 7.4beta4
# model = 951G-2HnD
# bridge és interface beállítások, módosítani kell adott eszközhöz!!!!
/interface bridge
add name=bridge
/interface ethernet
set [ find default-name=ether3 ] name=ISP1
set [ find default-name=ether4 ] name=ISP2
set [ find default-name=ether5 ] name=ISP3
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/ip pool
add name=pool1 ranges=192.168.88.10-192.168.88.20
/ip dhcp-server
add address-pool=pool1 interface=bridge name=server1
/routing table
add disabled=no fib name=ISP1
add disabled=no fib name=ISP2
add disabled=no fib name=ISP3
/interface bridge port
add bridge=bridge interface=ether1
add bridge=bridge interface=ether2
/ip settings
set allow-fast-path=no
/interface detect-internet
set internet-interface-list=WAN lan-interface-list=LAN wan-interface-list=WAN
/interface list member
add interface=bridge list=LAN
add interface=ISP1 list=WAN
add interface=ISP2 list=WAN
add interface=ISP3 list=WAN
add interface=ISP3 list=WAN
/ip address
add address=192.168.88.1/24 interface=bridge network=192.168.88.0
/ip dhcp-client
add add-default-route=no interface=ISP1 script="{\
\n \r\
\n:if (\$bound=1) do={\r\
\n/ip route set [find where comment=\"ISP1_VALIDATE\"] gateway=\$\"gateway-a\
ddress\"\r\
\n#/ip route set [find where comment=\"ISP1\"] gateway=\$\"gateway-address\"\
\_distance=1 disabled=no\r\
\n} else={\r\
\n#/ip route set [find where comment=\"ISP1\"] disabled=yes\r\
\n/ip route set [find where comment=\"ISP1_VALIDATE\"] gateway=0.0.0.0\r\
\n}\
\n \r\
\n/system script run dhcp_sn_ISP1\r\
\n/ip firewall connection remove [find connection-mark=\"CONN1\"]\
\n \r\
\n/ip firewall connection remove [find connection-mark=\"CONN2\"]\
\n \r\
\n/ip firewall connection remove [find connection-mark=\"CONN3\"]\
\n\r\
\n}" use-peer-dns=no use-peer-ntp=no
add add-default-route=no interface=ISP2 script="{\
\n \r\
\n:if (\$bound=1) do={\r\
\n/ip route set [find where comment=\"ISP2_VALIDATE\"] gateway=\$\"gateway-a\
ddress\"\r\
\n#/ip route set [find where comment=\"ISP2\"] gateway=\$\"gateway-address\"\
\_distance=2 disabled=no\r\
\n} else={\r\
\n#/ip route set [find where comment=\"ISP2\"] disabled=yes\r\
\n/ip route set [find where comment=\"ISP2_VALIDATE\"] gateway=0.0.0.0\r\
\n} \
\n \r\
\n/system script run dhcp_sn_ISP2\r\
\n#/ip firewall connection remove [find connection-mark=\"CONN1\"]\
\n \r\
\n/ip firewall connection remove [find connection-mark=\"CONN2\"]\
\n \r\
\n/ip firewall connection remove [find connection-mark=\"CONN3\"]\
\n\r\
\n}" use-peer-dns=no use-peer-ntp=no
add add-default-route=no interface=ISP3 script="{\
\n \r\
\n:if (\$bound=1) do={\r\
\n/ip route set [find where comment=\"ISP3_VALIDATE\"] gateway=\$\"gateway-a\
ddress\"\r\
\n#/ip route set [find where comment=\"ISP3\"] gateway=\$\"gateway-address\"\
\_distance=3 disabled=no\r\
\n} else={\r\
\n#/ip route set [find where comment=\"ISP3\"] disabled=yes\r\
\n/ip route set [find where comment=\"ISP3_VALIDATE\"] gateway=0.0.0.0\r\
\n}\
\n \r\
\n/system script run dhcp_sn_ISP3\r\
\n#/ip firewall connection remove [find connection-mark=\"CONN1\"]\
\n \r\
\n#/ip firewall connection remove [find connection-mark=\"CONN2\"]\
\n \r\
\n/ip firewall connection remove [find connection-mark=\"CONN3\"]\
\n\r\
\n}" use-peer-dns=no use-peer-ntp=no
/ip dhcp-server network
add address=192.168.88.0/24 dns-server=192.168.88.1 gateway=192.168.88.1
/ip dns
set allow-remote-requests=yes max-udp-packet-size=1024 query-server-timeout=1s \
query-total-timeout=5s servers=8.8.8.8,9.9.9.9,1.1.1.1
/ip firewall address-list
add address=192.168.88.0/24 list=local
add address=172.16.0.0/12 list=private
add address=192.168.0.0/16 list=private
add address=10.0.0.0/8 list=private
add address=127.0.0.0/8 list=private
add address=10.38.46.0/24 list=to_ISP1
add address=192.168.128.0/24 list=to_ISP1
add address=192.168.129.0/24 list=to_ISP1
add address=192.168.111.0/24 comment=ISP1 list=ISP_DHCP_NET
add address=192.168.109.0/24 comment=ISP2 list=ISP_DHCP_NET
/ip firewall filter
add action=accept chain=forward in-interface-list=LAN out-interface-list=LAN
add action=accept chain=forward connection-nat-state=dstnat in-interface-list=\
LAN out-interface-list=WAN
add action=accept chain=forward connection-state=established,related,untracked \
in-interface-list=WAN out-interface-list=LAN
add action=accept chain=forward connection-nat-state=dstnat in-interface-list=\
WAN out-interface-list=LAN
add action=drop chain=forward in-interface-list=WAN log=yes log-prefix=BLOCK \
out-interface-list=LAN
add action=accept chain=input in-interface-list=LAN
add action=accept chain=input connection-state=established,related \
in-interface-list=WAN
add action=accept chain=input in-interface-list=WAN protocol=icmp
add action=drop chain=input in-interface-list=WAN
/ip firewall mangle
add action=accept chain=prerouting comment="LAN access" dst-address-type=local \
in-interface-list=LAN
add action=accept chain=prerouting comment="ISP LAN access" connection-mark=\
NON_ROUTE dst-address-type=local
add action=accept chain=output connection-mark=NON_ROUTE dst-address-type=local
add action=mark-connection chain=prerouting comment=ISP_LAN connection-mark=\
no-mark dst-address-list=ISP_DHCP_NET in-interface-list=LAN \
new-connection-mark=NON_ROUTE
add action=mark-connection chain=prerouting connection-mark=no-mark \
in-interface-list=WAN new-connection-mark=NON_ROUTE src-address-list=\
ISP_DHCP_NET
add action=mark-connection chain=output connection-mark=no-mark \
dst-address-list=ISP_DHCP_NET new-connection-mark=NON_ROUTE
add action=mark-connection chain=input connection-mark=no-mark \
new-connection-mark=NON_ROUTE src-address-list=ISP_DHCP_NET
add action=mark-connection chain=output comment="GW Check" connection-mark=\
no-mark connection-state=new dst-address-list=!private icmp-options=8:0-255 \
new-connection-mark=NON_ROUTE protocol=icmp
add action=mark-connection chain=prerouting comment="Always to ISP1" \
connection-mark=no-mark connection-state=new dst-address-list=to_ISP1 \
in-interface-list=LAN new-connection-mark=CONN1-S
add action=mark-connection chain=prerouting comment="Incoming connections" \
connection-mark=no-mark connection-state=new in-interface=ISP1 \
new-connection-mark=CONN1-S passthrough=yes
add action=mark-connection chain=prerouting connection-mark=no-mark \
connection-state=new in-interface=ISP2 new-connection-mark=CONN2-S \
passthrough=yes
add action=mark-connection chain=prerouting connection-mark=no-mark \
connection-state=new in-interface=ISP3 new-connection-mark=CONN3-S \
passthrough=yes
add action=mark-connection chain=prerouting comment=\
"Test rule - Connection mark" connection-mark=no-mark disabled=yes \
dst-address=1.1.1.1 in-interface=bridge new-connection-mark=CONN3
add action=mark-connection chain=prerouting comment="PCC divide" \
connection-mark=no-mark connection-state=new dst-address-type=!local \
in-interface-list=LAN new-connection-mark=CONN1 passthrough=yes \
per-connection-classifier=both-addresses:6/0
add action=mark-connection chain=output connection-mark=no-mark \
connection-state=new dst-address-list=!private log-prefix=OUTI \
new-connection-mark=CONN1 per-connection-classifier=src-port:6/0
add action=mark-connection chain=prerouting connection-mark=no-mark \
connection-state=new dst-address-type=!local in-interface-list=LAN \
new-connection-mark=CONN1 per-connection-classifier=both-addresses:6/1
add action=mark-connection chain=output connection-mark=no-mark \
connection-state=new dst-address-list=!private log-prefix=OUTI \
new-connection-mark=CONN1 per-connection-classifier=src-port:6/1
add action=mark-connection chain=prerouting connection-mark=no-mark \
connection-state=new dst-address-type=!local in-interface-list=LAN \
new-connection-mark=CONN2 per-connection-classifier=both-addresses:6/2
add action=mark-connection chain=output connection-mark=no-mark \
connection-state=new dst-address-list=!private log-prefix=OUTI \
new-connection-mark=CONN2 per-connection-classifier=src-port:6/2
add action=mark-connection chain=prerouting connection-mark=no-mark \
connection-state=new dst-address-type=!local in-interface-list=LAN \
new-connection-mark=CONN2 passthrough=yes per-connection-classifier=\
both-addresses:6/3
add action=mark-connection chain=output connection-mark=no-mark \
connection-state=new dst-address-list=!private log-prefix=OUTI \
new-connection-mark=CONN2 per-connection-classifier=src-port:6/3
add action=mark-connection chain=prerouting connection-mark=no-mark \
connection-state=new dst-address-type=!local in-interface-list=LAN \
new-connection-mark=CONN3 per-connection-classifier=both-addresses:6/4
add action=mark-connection chain=output connection-mark=no-mark \
connection-state=new dst-address-list=!private log-prefix=OUTI \
new-connection-mark=CONN3 per-connection-classifier=src-port:6/4
add action=mark-connection chain=prerouting connection-mark=no-mark \
connection-state=new dst-address-type=!local in-interface-list=LAN \
new-connection-mark=CONN3 passthrough=yes per-connection-classifier=\
both-addresses:6/5
add action=mark-connection chain=output connection-mark=no-mark \
connection-state=new dst-address-list=!private log-prefix=OUTI \
new-connection-mark=CONN3 per-connection-classifier=src-port:6/5
add action=mark-routing chain=prerouting comment="Mark routing" \
connection-mark=CONN1 in-interface-list=LAN new-routing-mark=ISP1 \
passthrough=yes
add action=mark-routing chain=output connection-mark=CONN1 new-routing-mark=\
ISP1 passthrough=yes
add action=mark-routing chain=prerouting connection-mark=CONN1-S \
in-interface-list=LAN new-routing-mark=ISP1
add action=mark-routing chain=output connection-mark=CONN1-S new-routing-mark=\
ISP1
add action=mark-routing chain=prerouting connection-mark=CONN2 \
in-interface-list=LAN new-routing-mark=ISP2 passthrough=yes
add action=mark-routing chain=output connection-mark=CONN2 new-routing-mark=\
ISP2 passthrough=yes
add action=mark-routing chain=prerouting connection-mark=CONN2-S \
in-interface-list=LAN new-routing-mark=ISP2
add action=mark-routing chain=output connection-mark=CONN2-S new-routing-mark=\
ISP2
add action=mark-routing chain=prerouting connection-mark=CONN3 \
in-interface-list=LAN new-routing-mark=ISP3 passthrough=yes
add action=mark-routing chain=output connection-mark=CONN3 new-routing-mark=\
ISP3 passthrough=yes
add action=mark-routing chain=prerouting connection-mark=CONN3-S \
in-interface-list=LAN new-routing-mark=ISP3
add action=mark-routing chain=output connection-mark=CONN3-S new-routing-mark=\
ISP3
/ip firewall nat
add action=masquerade chain=srcnat comment=NAT ipsec-policy=out,none \
out-interface-list=WAN
add action=dst-nat chain=dstnat comment="IP DMZ" disabled=yes \
in-interface-list=WAN to-addresses=192.168.88.20
/ip route
add comment=ISP1_VALIDATE disabled=no distance=1 dst-address=8.8.8.8/32 \
gateway=192.168.111.1 pref-src=0.0.0.0 routing-table=main scope=11 \
suppress-hw-offload=no target-scope=10
add comment=ISP1_VALIDATE disabled=no distance=1 dst-address=208.67.222.222/32 \
gateway=192.168.111.1 pref-src=0.0.0.0 routing-table=main scope=11 \
suppress-hw-offload=no target-scope=10
add comment=ISP2_VALIDATE disabled=no distance=1 dst-address=8.8.4.4/32 \
gateway=192.168.109.1 pref-src=0.0.0.0 routing-table=main scope=11 \
suppress-hw-offload=no target-scope=10
add comment=ISP2_VALIDATE disabled=no distance=1 dst-address=208.67.220.220/32 \
gateway=192.168.109.1 pref-src=0.0.0.0 routing-table=main scope=11 \
suppress-hw-offload=no target-scope=10
add comment=ISP3_VALIDATE disabled=no distance=1 dst-address=9.9.9.9/32 \
gateway=0.0.0.0 pref-src=0.0.0.0 routing-table=main scope=11 \
suppress-hw-offload=no target-scope=10
add comment=ISP3_VALIDATE disabled=no distance=1 dst-address=9.9.9.10/32 \
gateway=0.0.0.0 pref-src=0.0.0.0 routing-table=main scope=11 \
suppress-hw-offload=no target-scope=10
add check-gateway=ping disabled=no distance=1 dst-address=10.254.10.1/32 \
gateway=8.8.8.8 pref-src=0.0.0.0 routing-table=main scope=12 \
suppress-hw-offload=no target-scope=11
add check-gateway=ping disabled=no distance=1 dst-address=10.254.10.1/32 \
gateway=208.67.222.222 pref-src=0.0.0.0 routing-table=main scope=12 \
suppress-hw-offload=no target-scope=11
add check-gateway=ping disabled=no distance=1 dst-address=10.254.20.2/32 \
gateway=8.8.4.4 pref-src=0.0.0.0 routing-table=main scope=12 \
suppress-hw-offload=no target-scope=11
add check-gateway=ping disabled=no distance=1 dst-address=10.254.20.2/32 \
gateway=208.67.220.220 pref-src=0.0.0.0 routing-table=main scope=12 \
suppress-hw-offload=no target-scope=11
add check-gateway=ping disabled=no distance=1 dst-address=10.254.30.3/32 \
gateway=9.9.9.9 pref-src=0.0.0.0 routing-table=main scope=12 \
suppress-hw-offload=no target-scope=11
add check-gateway=ping disabled=no distance=1 dst-address=10.254.30.3/32 \
gateway=9.9.9.10 pref-src=0.0.0.0 routing-table=main scope=12 \
suppress-hw-offload=no target-scope=11
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=10.254.10.1 pref-src=\
0.0.0.0 routing-table=ISP1 scope=30 suppress-hw-offload=no target-scope=12
add disabled=no distance=2 dst-address=0.0.0.0/0 gateway=10.254.20.2 pref-src=\
0.0.0.0 routing-table=ISP1 scope=30 suppress-hw-offload=no target-scope=12
add disabled=no distance=3 dst-address=0.0.0.0/0 gateway=10.254.30.3 pref-src=\
0.0.0.0 routing-table=ISP1 scope=30 suppress-hw-offload=no target-scope=12
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=10.254.20.2 pref-src=\
0.0.0.0 routing-table=ISP2 scope=30 suppress-hw-offload=no target-scope=12
add disabled=no distance=2 dst-address=0.0.0.0/0 gateway=10.254.10.1 pref-src=\
0.0.0.0 routing-table=ISP2 scope=30 suppress-hw-offload=no target-scope=12
add disabled=no distance=3 dst-address=0.0.0.0/0 gateway=10.254.30.3 pref-src=\
0.0.0.0 routing-table=ISP2 scope=30 suppress-hw-offload=no target-scope=12
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=10.254.30.3 pref-src=\
0.0.0.0 routing-table=ISP3 scope=30 suppress-hw-offload=no target-scope=12
add disabled=no distance=2 dst-address=0.0.0.0/0 gateway=10.254.10.1 pref-src=\
0.0.0.0 routing-table=ISP3 scope=30 suppress-hw-offload=no target-scope=12
add disabled=no distance=3 dst-address=0.0.0.0/0 gateway=10.254.20.2 pref-src=\
0.0.0.0 routing-table=ISP3 scope=30 suppress-hw-offload=no target-scope=12
add blackhole disabled=no distance=20 dst-address=208.67.220.220/32 gateway=\
0.0.0.0 pref-src=0.0.0.0 routing-table=main scope=11 suppress-hw-offload=no \
target-scope=10
add blackhole disabled=no distance=20 dst-address=208.67.222.222/32 gateway=\
0.0.0.0 pref-src=0.0.0.0 routing-table=main scope=11 suppress-hw-offload=no \
target-scope=10
add blackhole disabled=no distance=20 dst-address=8.8.8.8/32 gateway=0.0.0.0 \
pref-src=0.0.0.0 routing-table=main scope=11 suppress-hw-offload=no \
target-scope=10
add blackhole disabled=no distance=20 dst-address=9.9.9.9/32 gateway=0.0.0.0 \
pref-src=0.0.0.0 routing-table=main scope=11 suppress-hw-offload=no \
target-scope=10
add blackhole disabled=no distance=20 dst-address=9.9.9.10/32 gateway=0.0.0.0 \
pref-src=0.0.0.0 routing-table=main scope=11 suppress-hw-offload=no \
target-scope=10
add blackhole disabled=no distance=20 dst-address=8.8.4.4/32 gateway=0.0.0.0 \
pref-src=0.0.0.0 routing-table=main scope=11 suppress-hw-offload=no \
target-scope=10
add disabled=no distance=1 dst-address=0.0.0.0/0 gateway=10.254.10.1 pref-src=\
0.0.0.0 routing-table=main scope=30 suppress-hw-offload=no target-scope=30
add disabled=no distance=3 dst-address=0.0.0.0/0 gateway=10.254.30.3 pref-src=\
0.0.0.0 routing-table=main scope=30 suppress-hw-offload=no target-scope=30
add disabled=no distance=2 dst-address=0.0.0.0/0 gateway=10.254.20.2 pref-src=\
0.0.0.0 routing-table=main scope=30 suppress-hw-offload=no target-scope=30
/ip upnp
set enabled=yes
/ip upnp interfaces
add interface=bridge type=internal
add interface=ISP3 type=external
add interface=ISP2 type=external
add interface=ISP1 type=external
add interface=ISP3 type=external
/system clock
set time-zone-name=Europe/Budapest
/system routerboard settings
set silent-boot=yes
/system script
add dont-require-permissions=no name=dhcp_sn_ISP1 owner=admin policy=\
ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":lo\
cal iflist \"WAN\"\r\
\n:local fwlist \"ISP_DHCP_NET\"\r\
\n:local ifname \"ISP1\"\r\
\n/ip firewall address-list remove [find where list=\$fwlist && comment=\$if\
name]\r\
\n:foreach addressid in=[/ip address find where interface=\$ifname] do={\r\
\n :local ifaddr [/ip address get \$addressid address]\r\
\n /ip firewall address-list add list=\$fwlist address=\$ifaddr comment=\
\$ifname\r\
\n}\r\
\n"
add dont-require-permissions=no name=dhcp_sn_ISP2 owner=admin policy=\
ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":lo\
cal iflist \"WAN\"\r\
\n:local fwlist \"ISP_DHCP_NET\"\r\
\n:local ifname \"ISP2\"\r\
\n/ip firewall address-list remove [find where list=\$fwlist && comment=\$if\
name]\r\
\n:foreach addressid in=[/ip address find where interface=\$ifname] do={\r\
\n :local ifaddr [/ip address get \$addressid address]\r\
\n /ip firewall address-list add list=\$fwlist address=\$ifaddr comment=\
\$ifname\r\
\n}\r\
\n"
add dont-require-permissions=no name=dhcp_sn_ISP3 owner=admin policy=\
ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":lo\
cal iflist \"WAN\"\r\
\n:local fwlist \"ISP_DHCP_NET\"\r\
\n:local ifname \"ISP3\"\r\
\n/ip firewall address-list remove [find where list=\$fwlist && comment=\$if\
name]\r\
\n:foreach addressid in=[/ip address find where interface=\$ifname] do={\r\
\n :local ifaddr [/ip address get \$addressid address]\r\
\n /ip firewall address-list add list=\$fwlist address=\$ifaddr comment=\
\$ifname\r\
\n}\r\
\n"- A hozzászóláshoz be kell jelentkezni
Én még nem csináltam ilyet,de nemrég szembejött egy nagyon alapszintű "hivatalos Mikrotik" videó erről, de hátha segít: https://www.youtube.com/watch?v=nlb7XAv57tw
- A hozzászóláshoz be kell jelentkezni
Megcsináltam tegnap este nagyjából, majd egy idő után lefőtt a mikrotik, és hál'istennek a safe mód is bugos még mindig, úgyhogy nem tette vissza az indulási állapotot.
De amíg ment, ugyanaz volt: első ping jó, a többi nem.
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
Pont ma néztem a videót...mintha említettek volna benne valami olyat, hogy üríteni kell a routing táblát, hogy a new-connection szabály működjön. Elsőre ez ugrott be.
"The only valid measurement of code quality: WTFs/min"
- A hozzászóláshoz be kell jelentkezni
Ne hagyd figyelmen kívül a RouterOS bugjait se. Most nézem a ROS 11beta2 changelogot:
*) firewall - fixed mangle "mark-connection" with "passthrough=yes" rule for TCP RST packets;
Vajon még mi minden lett ennek a sornak az árnyékában javítva?
- A hozzászóláshoz be kell jelentkezni
Nem hagyom figyelmen kívül... Épp ezért nem piszkáltuk még sehol bottal se a 7-est. Ez az első teszt. Gondoltam már eltelt annyi idő, hogy a szar bugokat javították. Ezek szerint nem....
Mikrotik IRC-en is jártam már többször a problémával, ott többnyire elintézték azzal, hogy a 6-os halott bro, belinkelt 1-2 wikit meg fórumot, hogy így kell, takarodjak olvasni. Én meg hiába mondtam, hogy kurvára nem megy, és leszarom bro, de a 6-os működik...
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
Na igen a fejlesztők fejlesztenek, de normális frissen tartott manuálra már nem telik, bezzeg a bajszos szemüveges köcsögre, aki játssza a lett mesemondót a youtube-on, na rá telik :(
De pl a cake-t meg ott hagyták félkészen, egy figyelmeztetéssel, hogy nehogy a cake-n belül állítsd be a sávszelet (az auto sebesség dettó :( , pedig az lenne a poén) mert szarrá fagyhat a kernel, vagy minimum a szülő interfész (na ezt viszont nem írják :D )
- A hozzászóláshoz be kell jelentkezni
Ez a figyelmeztetés merre van? A help-en nem látom.
Nekem az fáj leginkább, hogy nincs még LTS ág a 7es verzión, így sokkal később jutunk el egy stabil release-hez. :/
Fura dolog ez a YT, ha nem lenne rá igény, nyilván nem tolnának bele erőforrást sem. De manapság már "menő" burkoló sem tudsz lenni, ha nincs saját csatornád róla...rtfm?...öregszünk, vagy a világ változik.
"The only valid measurement of code quality: WTFs/min"
- A hozzászóláshoz be kell jelentkezni
Rögtönöztem egy ilyet:
Ezt használja:
De simán az "Autorate ingress" se százas még simple queue-ként használva se, amikre nem hoz figyelmeztetést. Vagy nem állítunk be semmilyen sebességet magánál a Queue Type-nál, vagy használunk helyette más ütemezőt.
- A hozzászóláshoz be kell jelentkezni
Egy konfigot vagy a releváns részletet azért megoszthatnád, úgy valamivel könnyebb lenne ötletelni, mi lehet a gond.
- A hozzászóláshoz be kell jelentkezni
Mélyebben most nem gondolnék bele, hol mászhat el, de amin el szokott, az pl. a megfelelő mangle sorok esetén a passthrough opció hiánya (1. csomag connection mark után még tovább kell mennie és már az alapján a packet-et route mark-olni. Ha nincs passthrough, ez nem történik meg). Illetve a router-re/-ről közlekedő csomagoknak külön input/output chain-be kell felvenni ugyanazokat a mark szabályokat, nem elég a prerouting/postrouting.
"Probléma esetén nyomják meg a piros gombot és nyugodjanak békében!"
- A hozzászóláshoz be kell jelentkezni
Megtörtént (pontosabban így volt), ez nem működik ros 7 óta.
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
Akkor sorry! Majd check-olom a configot este.
"Probléma esetén nyomják meg a piros gombot és nyugodjanak békében!"
- A hozzászóláshoz be kell jelentkezni
Mindenkinek: ma este talán eljutok oda, hogy konfigrészletet adjak... :)
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
Mindenkinek köszi, aki ránéz. :)
[a@B] /ip/firewall/mangle> print
Flags: X - disabled, I - invalid; D - dynamic
0 D ;;; special dummy rule to show fasttrack counters
chain=prerouting action=passthrough
1 D ;;; special dummy rule to show fasttrack counters
chain=forward action=passthrough
2 D ;;; special dummy rule to show fasttrack counters
chain=postrouting action=passthrough
3 ;;; WAN1-es listas eszkozok fixen WAN1 fele
chain=prerouting action=mark-connection new-connection-mark=WAN1_conn passthrough=yes connection-state=new src-address-list=WAN1-net-list dst-address-list=!private-addresses
4 ;;; WAN2-es listas eszkozok fixen WAN2 fele
chain=prerouting action=mark-connection new-connection-mark=WAN2_conn passthrough=yes connection-state=new src-address-list=WAN2-net-list dst-address-list=!private-addresses
5 ;;; WAN3-es listas eszkozok fixen WAN3 fele
chain=prerouting action=mark-connection new-connection-mark=WAN3_conn passthrough=yes connection-state=new src-address-list=WAN3-net-list dst-address-list=!private-addresses
6 ;;; ========== INPUT connections ==========
chain=input action=passthrough
7 X chain=input action=mark-connection new-connection-mark=WAN1_conn passthrough=yes connection-state=new connection-mark=no-mark in-interface=telekom
8 X chain=input action=mark-connection new-connection-mark=WAN2_conn passthrough=yes connection-state=new connection-mark=no-mark in-interface=net-portal
9 X chain=input action=mark-connection new-connection-mark=WAN3_conn passthrough=yes connection-state=new connection-mark=no-mark in-interface=ether4
10 ;;; ========== OUTPUT connections ==========
chain=output action=passthrough
11 X chain=output action=mark-connection new-connection-mark=WAN2_conn passthrough=yes connection-state=new connection-mark=no-mark out-interface=net-portal log=yes log-prefix="YYYYY: "
12 X chain=output action=mark-connection new-connection-mark=WAN1_conn passthrough=yes connection-state=new connection-mark=no-mark out-interface=telekom log=yes log-prefix="YYYYY: "
13 X chain=output action=mark-connection new-connection-mark=WAN3_conn passthrough=yes connection-state=new connection-mark=no-mark out-interface=ether4 log=yes log-prefix="YYYYY: "
14 ;;; ========== WAN -> LAN forwardok ==========
chain=forward action=passthrough
15 chain=forward action=mark-connection new-connection-mark=WAN1_conn passthrough=yes connection-state=new connection-mark=no-mark in-interface=telekom
16 chain=forward action=mark-connection new-connection-mark=WAN2_conn passthrough=yes connection-state=new connection-mark=no-mark in-interface=net-portal
17 chain=forward action=mark-connection new-connection-mark=WAN3_conn passthrough=yes connection-state=new connection-mark=no-mark in-interface=ether4
18 ;;; ========== LAN -> WAN forwardok ==========
chain=forward action=passthrough
19 chain=forward action=mark-connection new-connection-mark=WAN1_conn passthrough=yes connection-state=new connection-mark=no-mark out-interface=telekom
20 chain=forward action=mark-connection new-connection-mark=WAN2_conn passthrough=yes connection-state=new connection-mark=no-mark out-interface=net-portal
21 chain=forward action=mark-connection new-connection-mark=WAN3_conn passthrough=yes connection-state=new connection-mark=no-mark out-interface=ether4
22 ;;; ========== Connection mark -> Routing mark ==========
chain=output action=passthrough
23 chain=output action=mark-routing new-routing-mark=WAN1 passthrough=yes connection-mark=WAN1_conn log=yes log-prefix="XXXXX: "
24 chain=output action=mark-routing new-routing-mark=WAN2 passthrough=yes connection-mark=WAN2_conn log=yes log-prefix="XXXXX: "
25 chain=output action=mark-routing new-routing-mark=WAN3 passthrough=yes connection-mark=WAN3_conn log=yes log-prefix="XXXXX: "
26 chain=prerouting action=mark-routing new-routing-mark=WAN1 passthrough=yes connection-mark=WAN1_conn
27 chain=prerouting action=mark-routing new-routing-mark=WAN2 passthrough=yes connection-mark=WAN2_conn
28 chain=prerouting action=mark-routing new-routing-mark=WAN3 passthrough=yes connection-mark=WAN3_conn
[a@B] /ip/firewall/mangle> /routing/table print
Flags: D - dynamic; X - disabled, I - invalid; U - used
0 D name="main" fib
1 name="WAN1" fib
2 name="WAN2" fib
3 name="WAN3" fib
[a@B] /ip/firewall/mangle> /ip route/print det
Flags: D - dynamic; X - disabled, I - inactive, A - active; c - connect, s - static, r - rip, b - bgp, o - ospf, d - dhcp, v - vpn, m - modem, y - bgp-mpls-vpn; H - hw-offloaded;
+ - ecmp
DAv dst-address=0.0.0.0/0 routing-table=main pref-src="" gateway=telekom immediate-gw=telekom distance=10 scope=30 target-scope=10 vrf-interface=telekom suppress-hw-offload=no
D d dst-address=0.0.0.0/0 routing-table=main pref-src="" gateway=89.134.67.254 immediate-gw=89.134.67.254%ether4 distance=20 scope=30 target-scope=10 vrf-interface=ether4
suppress-hw-offload=no
D v dst-address=0.0.0.0/0 routing-table=main pref-src="" gateway=net-portal immediate-gw=net-portal distance=30 scope=30 target-scope=10 vrf-interface=net-portal
suppress-hw-offload=no
DAc + dst-address=10.0.0.0/24 routing-table=main gateway=br2 immediate-gw=br2 distance=0 scope=10 suppress-hw-offload=no local-address=10.0.0.3%br2
DAc + dst-address=10.0.0.0/24 routing-table=main gateway=br2 immediate-gw=br2 distance=0 scope=10 suppress-hw-offload=no local-address=10.0.0.2%br2
DAc + dst-address=10.0.0.0/24 routing-table=main gateway=br2 immediate-gw=br2 distance=0 scope=10 suppress-hw-offload=no local-address=10.0.0.1%br2
DAc dst-address=10.0.40.9/32 routing-table=main gateway=net-portal immediate-gw=net-portal distance=0 scope=10 suppress-hw-offload=no local-address=91.147.235.39%net-portal
DAc dst-address=89.134.64.0/22 routing-table=main gateway=ether4 immediate-gw=ether4 distance=0 scope=10 suppress-hw-offload=no local-address=89.134.66.87%ether4
DAc dst-address=145.236.238.139/32 routing-table=main gateway=telekom immediate-gw=telekom distance=0 scope=10 suppress-hw-offload=no local-address=91.120.133.208%telekom
DAc dst-address=192.168.34.0/24 routing-table=main gateway=br34 immediate-gw=br34 distance=0 scope=10 suppress-hw-offload=no local-address=192.168.34.1%br34
DAc dst-address=192.168.134.0/24 routing-table=main gateway=br134 immediate-gw=br134 distance=0 scope=10 suppress-hw-offload=no local-address=192.168.134.1%br134
DAc dst-address=192.168.234.0/24 routing-table=main gateway=br234 immediate-gw=br234 distance=0 scope=10 suppress-hw-offload=no local-address=192.168.234.1%br234
52 As dst-address=0.0.0.0/0 routing-table=WAN1 pref-src="" gateway=telekom immediate-gw=telekom distance=1 scope=30 target-scope=10 suppress-hw-offload=no
53 As dst-address=192.168.34.0/24 routing-table=WAN1 pref-src="" gateway=br34 immediate-gw=br34 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
54 As dst-address=192.168.134.0/24 routing-table=WAN1 pref-src="" gateway=br134 immediate-gw=br134 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
55 As dst-address=192.168.234.0/24 routing-table=WAN1 pref-src="" gateway=br234 immediate-gw=br234 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
56 As dst-address=0.0.0.0/0 routing-table=WAN2 pref-src="" gateway=net-portal immediate-gw=net-portal distance=1 scope=30 target-scope=10 suppress-hw-offload=no
57 As dst-address=192.168.34.0/24 routing-table=WAN2 pref-src="" gateway=br34 immediate-gw=br34 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
58 As dst-address=192.168.134.0/24 routing-table=WAN2 pref-src="" gateway=br134 immediate-gw=br134 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
59 As dst-address=192.168.234.0/24 routing-table=WAN2 pref-src="" gateway=br234 immediate-gw=br234 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
60 As dst-address=0.0.0.0/0 routing-table=WAN3 pref-src="" gateway=89.134.67.254 immediate-gw=89.134.67.254%ether4 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
61 As dst-address=192.168.34.0/24 routing-table=WAN3 pref-src="" gateway=br34 immediate-gw=br34 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
62 As dst-address=192.168.134.0/24 routing-table=WAN3 pref-src="" gateway=br134 immediate-gw=br134 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
63 As dst-address=192.168.234.0/24 routing-table=WAN3 pref-src="" gateway=br234 immediate-gw=br234 distance=1 scope=30 target-scope=10 suppress-hw-offload=no
[a@B] /ip/firewall/mangle>
Az ip route kimenetből kivettem a nem releváns sorokat (egy csomó static meg dynamic route). Így van az, hogy LAN -> WAN irány, illetve a WAN -> LAN irány megy. Ha a mangle-nél a 7,8,9-et engedélyezem, akkor van az, hogy kintről mikrotikre első ping megjön, a többi utána nem. Az output meg emlékeim szerint egyáltalán nem megy, de ezt most nem akarom távolról kipróbálni, nehogy kizárjam magam, talán majd holnap.
Ami még talán lényeges a fast-path, ki van kapcsolva természetesen:
[a@B] /ip/settings> print
ip-forward: yes
send-redirects: yes
accept-source-route: no
accept-redirects: no
secure-redirects: yes
rp-filter: no
tcp-syncookies: no
max-neighbor-entries: 8192
arp-timeout: 30s
icmp-rate-limit: 10
icmp-rate-mask: 0x1818
route-cache: yes
allow-fast-path: no
ipv4-fast-path-active: no
ipv4-fast-path-packets: 0
ipv4-fast-path-bytes: 0
ipv4-fasttrack-active: no
ipv4-fasttrack-packets: 0
ipv4-fasttrack-bytes: 0
[a@B] /ip/settings>
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
Szia!
"Sajnos" a 7-es váltást nem tudod elkerülni. Egyre több eszköz "v7 only". Másfél éve csak v7-et használok, van veled gond, ezt nem tagadom, de a 6-os felett elment az idő és a hardver is.
A configoddal kapcsolatban:
chain=forward action=passthrough
- ez a sor nem teljesen világos, miért is kell.
A mangle ágban a forwardban jelölöd meg a kapcsolatokat, csomagokat. Ezt ajánlás szerint a preroutingban kellene (ahogy bennyh is megoldotta).
Felrakok több helyen működő mangle szabályokat (próbáltam értelemszerűen szétszedni), én ezekben interface-list-et használok.
/interface list
add name=LAN
add name=WAN1
add name=WAN2
/interface list member
add interface=bridge_LAN list=LAN
add interface=ether1 list=WAN1
add interface=lte1 list=WAN2
/ip firewall mangle
add action=mark-connection chain=input connection-state=new in-interface-list=WAN1 new-connection-mark=WAN1-incoming
add action=mark-connection chain=input connection-state=new in-interface-list=WAN2 new-connection-mark=WAN2-incoming
add action=mark-connection chain=prerouting in-interface-list=WAN1 new-connection-mark=WAN1-forward passthrough=yes
add action=mark-connection chain=prerouting in-interface-list=WAN2 new-connection-mark=WAN2-forward passthrough=yes
add action=mark-routing chain=prerouting connection-mark=WAN1-masq-connection in-interface-list=LAN new-routing-mark=WAN1-route
add action=mark-routing chain=prerouting connection-mark=WAN2-masq-connection in-interface-list=LAN new-routing-mark=WAN2-route
add action=mark-routing chain=prerouting connection-mark=WAN1-forward in-interface-list=LAN new-routing-mark=WAN1-route
add action=mark-routing chain=prerouting connection-mark=WAN2-forward in-interface-list=LAN new-routing-mark=WAN2-route
add action=mark-routing chain=output connection-mark=WAN1-incoming new-routing-mark=WAN1-route
add action=mark-routing chain=output connection-mark=WAN2-incoming new-routing-mark=WAN2-route
add action=mark-routing chain=output connection-mark=WAN1-forward new-routing-mark=WAN1-route passthrough=yes
add action=mark-routing chain=output connection-mark=WAN2-forward new-routing-mark=WAN2-route passthrough=yes
/routing table
add fib name=WAN1-route
add fib name=WAN2-route
/ip route
add distance=1 gateway=WAN1-interface routing-mark=WAN1-route
add distance=1 gateway=WAN2-interface routing-mark=WAN2-route
Ajánlom a Kalapos Laci által üzemeltetett Mikrotik facebook csoportot, jó velük a tapasztalat.
- A hozzászóláshoz be kell jelentkezni
De a hardver nem új... Már úgy nem új, hogy nem olyan board, ami korábban nem volt.
chain=forward action=passthrough
- ez a sor nem teljesen világos, miért is kell.
Hogy legyen hova írni a commentet. :)
Próbáltam preroutinggal is, és úgy sem volt jó emlékeim szerint. Illetve preroutingnál még nincs out-interface még, a postroutinggal meg szintén mintha lett volna valami...
Nem tudom mi az a csoport, nem tudom ki az a Kalapos Laci, de amúgy se akarok ilyennel facebookra menni. Miért szeretik az emberek a facebookot (vagy tetszőleges ilyen "közösségi média" szart) olyan dolgokra használni, amire baromira nem való?
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
"Sose a gép a hülye." - (hnsz2002)
"Nem tudom mi az a csoport, nem tudom ki az a Kalapos Laci, de amúgy se akarok ilyennel facebookra menni. Miért szeretik az emberek a facebookot (vagy tetszőleges ilyen "közösségi média" szart) olyan dolgokra használni, amire baromira nem való?"
Nem szeretem a Facebookot, de a szakmai csoportokban (zárt) általában kapok normális választ a fórumokkal ellentétben.
Kalapos Laci - Mikrotik oktató
A fenti konfigot kipróbáltam egy eszközön(v7.10) és teszi a dolgát.
Sok sikert a továbbiakhoz! : )
- A hozzászóláshoz be kell jelentkezni
Értem, de teljesen alkalmatlan ilyenekre, nem lehet rendesen formázni a szöveget, egy rendes kódrészletet beilleszteni, rendesen válaszolni, a kereshetőségéről meg ne is beszéljük.
"Kalapos Laci - Mikrotik oktató"
Ezt közben megtaláltam, azt viszont nem, hogy melyik az "ő csoportja"
"A fenti konfigot kipróbáltam egy eszközön(v7.10) és teszi a dolgát."
Mármint az én konfigomat? Mert akkor frissítek egyet és megnézem.
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
Jah illetve még annyi hozzá, hogy pont a forward megy, az input-output meg nem.
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
add action=mark-connection chain=prerouting in-interface-list=WAN1 new-connection-mark=WAN1-forward passthrough=yes
add action=mark-connection chain=prerouting in-interface-list=WAN2 new-connection-mark=WAN2-forward passthrough=yes
Itt nincs sem new, sem no-mark filter, szóval ezen minden eges csomag átfut... Nem szokott lefőni a CPU?
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
Meguntam. Fasz kivan. Nem működik. Nem értem. Visszaraktam a 6.49-et. Majd talán 1-2 év múlva...
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
Valami még elszaródott.. Azóta a scheduler nem futtatja a scripteket, nem megy a hairpin nat sem.
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
A NAT-tal volt azóta mókolás, az konfig probléma volt, fixed.
A scheduler meg azért nem ment, mert az NTP client beállítások kukázódtak downgrade-nél, 2002 volt a mikrotiken, a schedulerben meg 2019, 2020 volt a start date...
"Sose a gép a hülye."
- A hozzászóláshoz be kell jelentkezni
A schedulerben meg 2019, 2020 volt a start date...
Na én ezért állítom a start date-et 1970-re :D
- A hozzászóláshoz be kell jelentkezni