
우리는 2개의 WAN main
(좋고 비싼 대역폭)과 backup
. main
일상적인 사용을 위한 것이며 backup
대역폭이 느립니다.
backup
다운로드를 처리하는 Synology NAS가 있는데, 게이트웨이의 인터페이스를 통해 토렌트 다운로드를 강제로 수행하고 싶습니다 . 내 현재 구성은 다음과 같습니다.
/ip firewall filter add action=accept chain=forward comment="H2G2: Allow forward to DSM" dst-address=192.168.1.3 dst-port=22,80,139,443,445,5001,32400 protocol=tcp
/ip firewall filter add action=accept chain=forward comment="H2G2: Allow forward established, related replies to H2G2" connection-state=established,related dst-address=192.168.1.3 protocol=tcp
/ip firewall filter add action=accept chain=forward comment="H2G2: Allow established and related replies from H2G2" connection-state=established,related protocol=tcp src-address=192.168.1.3
/ip firewall filter add action=drop chain=forward comment="H2G2: Drop everything else not coming from backup" dst-address=192.168.1.3 in-interface=!ether2-backup
/ip firewall nat add action=masquerade chain=srcnat out-interface=ether1-main
/ip firewall nat add action=masquerade chain=srcnat out-interface=ether2-backup
/ip firewall nat add action=dst-nat chain=dstnat dst-port=22 in-interface=ether1-main protocol=tcp to-addresses=192.168.1.3 to-ports=22
/ip firewall nat add action=dst-nat chain=dstnat dst-port=80 in-interface=ether1-main protocol=tcp to-addresses=192.168.1.3 to-ports=80
/ip firewall nat add action=dst-nat chain=dstnat dst-port=139 in-interface=ether1-main protocol=tcp to-addresses=192.168.1.3 to-ports=139
/ip firewall nat add action=dst-nat chain=dstnat dst-port=443 in-interface=ether1-main protocol=tcp to-addresses=192.168.1.3 to-ports=443
/ip firewall nat add action=dst-nat chain=dstnat dst-port=445 in-interface=ether1-main protocol=tcp to-addresses=192.168.1.3 to-ports=445
/ip firewall nat add action=dst-nat chain=dstnat dst-port=5001 in-interface=ether1-main protocol=tcp to-addresses=192.168.1.3 to-ports=5001
/ip firewall nat add action=dst-nat chain=dstnat dst-port=32400 in-interface=ether1-main protocol=tcp to-addresses=192.168.1.3 to-ports=32400
/ip firewall nat add action=dst-nat chain=dstnat dst-port=6881 in-interface=ether2-backup protocol=tcp to-addresses=192.168.1.3 to-ports=6881
/ip firewall nat add action=dst-nat chain=dstnat dst-port=6881 in-interface=ether2-backup protocol=udp to-addresses=192.168.1.3 to-ports=6881
/ip firewall mangle add action=mark-routing chain=prerouting dst-address=!192.168.1.0/24 new-routing-mark=toBackup passthrough=yes src-address=192.168.1.3
; Then route 0.0.0.0/0 toBackup routing mark to ether2-backup
따라서 기본적으로 이러한 포트(22,80,139,443,445,5001,32400)에 대한 패킷을 NAS( 192.168.1.3
)로 전달하는 것을 허용하고 인터페이스에서 나오지 않는 다른 모든 것을 삭제합니다 backup
. 나는 이 포트들을 NAT로 연결합니다. 그리고 로컬 네트워크용이 아닌 1.3의 연결을 다음과 같이 표시합니다.routing-mark
toBackup
. 분명히, 나는 경로를 0.0.0.0/0
표시했고 toBackup
작동 ether2-backup
합니다. 전달된 포트 중 하나에 NAS에 액세스하면 괜찮습니다. 다른 모든 것은 백업을 통해 진행됩니다.
이제 문제는 모든 것이 백업된다는 것입니다. 토렌트, PEX, DHT 프로토콜을 정확히 알지 못하며 서버와 해당 파일이 언제 광고되는지 잘 모르겠습니다. 토렌트와 마그넷의 트래커에는 HTTP를 통해서도 접근할 수 있는 트래커가 내장되어 있다는 것을 알고 있으므로 이는 파일이 광고되는 시기에 따라 다릅니다. 클라이언트가 추적기에 자신을 알릴 때 광고가 나타나면 모든 것을 백업해 둘 수 있습니다. 외부에서 연락할 때만 알림이 전송되는 경우(현재 내 수신 포트는 6881 UDP 및 TCP임) 에서 6881을 차단하는 것이 더 좋지만 ether1-main
다시 클라이언트가 HTTP를 통해 추적기에 자신을 알릴까 두렵습니다 ether1-main
. 분명히 동일한 IP에서 자신을 광고하지만 ether2-backup
)...
내가 어떻게 그것을 달성할 수 있는지에 대한 아이디어가 있습니까?