RouterOS 文档展示了如何通过 RouterOS 内置的 HTTP 代理透明地代理所有 Web 流量:
/ip firewall nat
add in-interface=ether1 dst-port=80 protocol=tcp action=redirect to-ports=8080 chain=dstnat
/ip proxy
set enabled=yes port=8080
Run Code Online (Sandbox Code Playgroud)
我想在另一台机器上运行代理,以便我可以利用 Squid 等中提供的更复杂的过滤规则。但是,如果我使用 NAT 将流量重定向到另一台运行 Squid 的计算机,它将不起作用,因为需要重写 HTTP 请求才能成为代理 HTTP 请求;仅重定向流量就会从 Squid 中产生错误的请求错误。
我有一个 MikroTik RouterOS 6.23 设备,我的网络如下:
Router
|
|-- bridge1_LAN (wlan1 + ether1) (192.168.0.210) -- LAN (192.168.0.0/24)
| Here is where computers are. Those include some servers and some users.
| Users should be able to navigate always, and servers should
| be reachable online always.
|
|-- ether2_ADSL (192.168.2.2) -- ADSL router (192.168.2.1) -- WAN
| Users should navigate through here because there is no traffic limit.
| Incoming traffic should work exactly as with ether3_3G, as a temporary
| …Run Code Online (Sandbox Code Playgroud) 我在和接口上有 2 个静态地址(a.b.c.72/24和a.b.c.128/24)。ISP 有一个网关 。我只能在 上使用,只能在 上使用。gateway1gateway2a.b.c.1a.b.c.72gateway1a.b.c.128gateway2
如何让 abc128 工作?我想通过第二个接口路由一些本地机器。我知道一些通过 mikrotik 中不同网关进行路由的方法。在 linux 中,我可以指定dev参数进行路由。
我添加了路由表和规则,但它仍然通过 gateway2 路由。
/ip dhcp-client print
Flags: X - disabled, I - invalid
# INTERFACE USE ADD-DEFAULT-ROUTE STATUS ADDRESS
0 gateway1 yes no bound X.Y.164.72/24
1 gateway2 yes no bound X.Y.164.128/24
/ip route
add distance=51 gateway=X.Y.164.1 pref-src=X.Y.164.128 routing-mark=gate2
add distance=1 dst-address=X.Y.164.0/24 gateway=gateway2 pref-src=X.Y.164.128 routing-mark=gate2
add distance=52 gateway=X.Y.164.1 pref-src=X.Y.164.72 routing-mark=gate1
add distance=1 dst-address=X.Y.164.0/24 gateway=gateway1 …Run Code Online (Sandbox Code Playgroud) 我想将现有的内部子网安全地分布在多个建筑物上。这意味着我有两个位置的虚拟机需要位于同一子网中。这个想法是虚拟机(具有静态 IP)可以从一个位置迁移到另一个位置。
(物理)主机连接到每个位置的交换机。所以,如果没有任何安全或成本问题,我只需用网线连接两个交换机:
[机器]---[交换机A]<----长电缆--->[交换机B]---[机器]
我想要的是使用两个不需要关心 IP 地址或路由的网关将这条长电缆替换为加密隧道,只需将任何传入数据包加密并通过加密隧道将它们发送到另一个网关。另一个网关然后解密数据包并将它们发送到远程交换机。这在物理上看起来像这样:
[机器]---[交换机A]---[网关A] <-- 互联网--> [网关B]--[交换机B]---[机器]
我想避免网关需要子网内的任何 IP 地址。规则应完全基于端口:
两个网关将有一个静态的、可路由的 IP 地址来建立隧道。加密应该很强大(至少是 AES128、SHA256、DH2048;共享机密很好),这是简单的 PPP 类型隧道不支持的。因此可能需要一个额外的/单独的加密层。
我只有 MikroTik 路由器可用。所以我更愿意使用它们。但是,我主要是在寻找“神奇的词”(协议名称等)以及允许我这样做的正确技术组合。因此,如果您知道如何使用 Cisco 路由器或 HP 路由器执行此操作,如果您解释了如何使用这些路由器执行此操作,它可能也会有所帮助...
我可以使用什么样的防火墙过滤器和协议来实现这一点?
我的第一个想法是使用 IPsec 来跨越加密隧道。但是,那么我需要定义基于物理端口的 IPsec 策略。但是只有一个选项可以定义来自/到特殊 IP 地址/IP 端口组合的数据。
因此,IPsec 将仅用作另一种隧道类型的加密层(MikroTik RouterOS 目前支持 PPTP、SSTP、L2TP 和 OVPN)。由于 PPP 隧道通常不支持强加密,我会让 IPsec 完成这项工作,并通过加密的 IPsec 隧道跨越未加密的 PPP 隧道。
好的,现在我们至少有一些隧道接口,我们可以像传出端口一样使用它。但是,我有点迷失在这里。我不认为有可能说:“必须通过接口发送具有传入 at 的帧”和“必须通过接口发送传入 at 的帧”。
我不经常在 Layer2 工作......所以我实际上正在寻找正确的“术语”或“类别”。我可以想象在 IP-Firewall (mangle->prerouting) 或类似的地方找到它,但我认为这已经是第 3 层的东西......
我只需要设置一个桥接吗?如果是这样,我如何将隧道接口添加到网桥(最好使用 winbox 接口)?网桥需要MAC地址吗? …
我是 MikroTik RouterOS 的新手。
当有人尝试连接到某个接口上的特殊端口时,如何添加规则或脚本以发出哔声?
例如,我需要知道是否有人试图从外部 ftp 到我的服务器。
一家本地供应商正在提议使用MikroTik的无线桥接解决方案。我以前从未听说过 MikroTik,但似乎他们有追随者。我通常的首选是思科,但两者之间的价格差异很大> 8X。考虑 MikroTik 我疯了吗?有人听说过吗?他们的对比如何? 带无线网卡的 MikroTik RB433 与 Aironet 1410
基本上不言自明。Mikrotik 的 RouterOS 有两种不同的功能,一种是备份路由器,一种是导出路由器的配置。究竟有什么区别,什么时候应该使用一种而不是另一种?
我们的 Mikrotik (RouterOS 6.36) 上有 DNS 服务器。
[admin@xxx] /ip dns> print
servers: 10.0.10.3,8.8.8.8
dynamic-servers:
allow-remote-requests: yes
max-udp-packet-size: 4096
query-server-timeout: 2s
query-total-timeout: 10s
cache-size: 10240KiB
cache-max-ttl: 1w
cache-used: 243KiB
[admin@xxx] /ip dns>
Run Code Online (Sandbox Code Playgroud)
有它应该询问的DNS服务器列表。如果没有找到记录,我希望它首先询问 10.0.10.3,而不是询问 8.8.8.8?
问题是,10.0.10.3 是我们的内部 DNS 服务器,有一些本地地址。这些在 8.8.8.8 上不可用
当我列出两台服务器时,地址的 nslookup 失败。当我删除谷歌 (8.8.8.8) 并只保留我们的内部时,它可以工作。
为什么 RouterOS 不遵守服务器的顺序?
我试图让订单 10.0.10.3,8.8.8.8 或 8.8.8.8, 10.0.10.3 ,没关系。
有任何想法吗?谢谢
我的 MikroTik RouterBOARD hEX - RB750Gr3(运行 Router OS 7.8)有一个奇怪的问题。
\n某些 TCP 连接非常慢,例如这个 93 KB 文件需要很长时间才能从 router\xe2\x80\x99s LAN 中的客户端下载:
\ncurl https://gewerbeauskunft.bremen.de/navigaweb/res/themes/System_09.12.06/js/jquery-1.11.3.min.js > /dev/null\n % Total % Received % Xferd Average Speed Time Time Time Current\n Dload Upload Total Spent Left Speed\n100 95957 0 95957 0 0 1998 0 --:--:-- 0:00:48 --:--:-- 1279\n\nRun Code Online (Sandbox Code Playgroud)\n花了48秒!
\n这是可重现的,并且也会发生在同一 LAN 上的其他客户端上。
\n然而,在路由器本身上获取文件速度很快:
\n[admin@MikroTik] > /tool/fetch url="https://gewerbeauskunft.bremen.de/navigaweb/res/themes/System_09.12.06/js/jquery-1.11.3.min.js"\n status: finished\n downloaded: 93KiB-z pause]\n total: 0KiB\n duration: 1s\nRun Code Online (Sandbox Code Playgroud)\n所以我想看看\xe2\x80\x99s发生了什么,并开始在路由器上捕获数据包:
\n[admin@MikroTik] /tool/sniffer> …Run Code Online (Sandbox Code Playgroud) mikrotik ×9
routeros ×9
routing ×2
cisco ×1
dns-server ×1
encryption ×1
http-proxy ×1
link-layer ×1
nat ×1
tcp ×1
tunneling ×1
wifi ×1