分类 RouterOS 下的文章

ipip.net数据生成Routeros的address-list大陆分流列表

原来一直使用apnic的ip地址按CN生成Routeros的address-list分流列表,偶然发现列表里有境外ip,检查发现是大陆厂商的ip宣告到美国了。
平时用ipip.net来查看ip地址所在地,通过几年使用发现ipip.net的地址库对比其他ip查询网站来说更准确些,并且ipip.net在github每月发布大陆地址列表
上述ip地址宣告变化可以从ipip.net大陆ip列表的20190304这个github commit看出,这个commit中203.20.138.0/23被删除,用ip.cn站长之家查看,发现是福建电信ip,如图
ip.cn
通过apnic最新CN列表查找发现在203.20.136.0/21这个段里面,如图
apnic
但是ipip.net查询,是印尼电信,如图
ipip.net
而且通过路由追踪到了印尼,如图
路由追踪

于是写了行命令自动从github下载并转成routeros的address-list,并添加了私有ip地址192.168.0.0/16,172.16.0.0/12和10.0.0.0/8

curl -s https://raw.githubusercontent.com/17mon/china_ip_list/master/china_ip_list.txt |sed -e 's/^/add address=/g' -e 's/$/ list=CNIP/g'|sed -e $'1i\\\n/ip firewall address-list' -e $'1i\\\nremove [/ip firewall address-list find list=CNIP]' -e $'1i\\\nadd address=10.0.0.0/8 list=CNIP comment=private-network' -e $'1i\\\nadd address=172.16.0.0/12 list=CNIP comment=private-network' -e $'1i\\\nadd address=192.168.0.0/16 list=CNIP comment=private-network'>cnip.rsc

并添加了定时任务每月生成一次放在我的网站,可以在这里下载

Routeros基于shadowsocks的国际多线分流

以下内容未完全实践。

一般iplc线路机场都会提供多条不通地域的线路,比如京德,沪美,沪日,深港,深新等。
以上每条线路基本都是物理上的最优线路,比如京德线路可以做到北京到欧洲120ms左右,而通过大家常用的香港出口到欧洲的话大部分是绕道美国,少部分走东南亚中东进入欧洲,前者需要250ms+,后者150ms+,还有对于大陆北方用户来说,通过沪美线路到美国比通过香港出口到美国延迟要少30ms以上。
所以如果能充分利用这些线路,能大大优化翻墙体验,自己当宽带运营商,想怎么走就怎么走。

要实现多出口分流,需要用到策略路由,以下以routeros为主路由,openwrt为旁路由,使用深港作默认线路,欧洲走京德,北美走沪美。

首先需要获取世界各地ip地址,比如欧洲都有哪些IP地址,这些地址走京德线路,北美都有哪些ip,需要走沪美线路等,我在之前文章routeros配置vpn分流大陆ip 中介绍过怎么获取大陆ip地址列表,可以通过类似方法获得。由于是分国别IP,比如欧洲列表需要合并各国IP,减少条目,加快路由查询效率。此处为难点,涉及到很多问题,比如土耳其的IP不是欧洲,但是走京德线路比深港快,对比来说,俄罗斯远东ip走京德的话会绕很长的回头路,所以IP地址的界线在哪,怎么优化,由于合并了IP地址怎么后期添加等等,所以一个这是个难点。

使用三个openwrt做旁路由,openwrt-1使用京德线路,openwrt-2使用沪美线路,openwrt-0使用深港线路

配置策略路由,目的地址是欧洲IP转发给openwrt-1,目的地址是北美IP转发给openwrt-2,目的地址是大陆ip的走默认网关,其他IP地址转发给openwrt-0

还有dns问题,怎么高效的使用全球cdn

在此抛砖引玉,欢迎大家交流分享。

Routeros配置openvpn服务器和客户端

网上很多教程了,但是Routeros使用openvpn over shadowsocks避免使用机场安全隐患中需要一些内容,所以在此简单写一下。

Routeros配置openvpn服务器步骤如下
1,创建根证书
routeros网络配置地址(下同):/webfig/#System:Certificates.Certificates.new
以下信息根据自己更改,注意证书有效期
证书配置
保存后点击上图中sign按钮签发证书,成功后会如下图,证书前显示KAT
证书KAT标记
2,配置openvpn客户端地址池
/webfig/#IP:Pool.Pools.new
如图openvpn地址池
3,配置openvpn配置profile
/webfig/#PPP.Profiles.new
填写前三项,其他默认,注意本地地址和地址池尽量在同一网段,远程地址选择上面地址池名
Screen Shot 2020-04-06 at 01.46.04.png
4,配置openvpn服务器
/webfig/#PPP.OVPN_Server
配置以下红圈位置
openvpn服务器配置
5,配置openvpn账号
/webfig/#PPP.Secrets.new
openvpn账号
需要几个就添加几个

Routeros配置openvpn客户端
/webfig/#PPP.Interface.new.OVPN_Client
openvpn客户端

openvpn over shadowsocks避免机场安全隐患

2019年底开始翻墙变得越来越难,基础宽带是联通,穿墙线路一直使用的阿里云香港线路在晚上高峰期qos限速,延迟增加,本来200m带宽严重的时候甚至掉到各位数。

这时候不得不考虑一直续费而没用的备用机场了,由于没有出口的控制权,机场理论上来说可以看到所有非加密流量内容,个人对此比较在意,但是又觊觎机场的iplc线路(阿里云cen线路),不受墙影响,不受时间段qos,曾经询问过价格,被每月几万劝退了。

那么退而求其次,利用机场的shadowsocks作外层隧道,使用openvpn或其他tcp的vpn连接gcp的vps,保证本地到出口vps的链路是加密,就既能利用iplc线路又保证安全,唯一问题是tcp over tcp受网络波动影响很大,具体请谷歌之。

下面是使用环境,本地routeros v6,本地openwrt with ShadowSocksR Plus+ ,某阿里云中转机场,gcp香港routeros v6

1,在gcp香港routeros开启openvpn服务器,并打开gcp防火墙相关端口,参考Routeros配置openvpn服务器和客户端
2,配置好openwrt上机场信息,保证能通过机场翻墙
3,本地routeros配置gcp香港服务器ip路由通过openwrt,参考Routeros配置使用openwrt作旁路由
4,配置本地routeros的openvpn客户端,参考Routeros配置openvpn服务器和客户端
5,配置gcp香港routeros通过openvpn回程路由,如果本地routeros使用masquerade等nat时不需要配置,关于masquerade相关参考routeros的默认nat尽量不要用masquerade
6,配置本地routeros的ip分流,参考routeros配置vpn分流大陆ip

联想M920x与英特尔X710-DA4组建万兆迷你服务器

前段时间分享了联想thinkcentre M920x与Intel X710-T4组建万兆迷你服务器,用的网卡是4个万兆电口的X710-T4,由于最近打算更换核心交换机,换成mikrotik的全光口40gbps交换机CRS326-24S+2Q+RM,所以M920x更换了4光口的万兆网卡X710-DA4。
由于联想官方没有支持四光口的网卡自然也不会有对应的挡板,所以对原配的vga挡板做了魔改。

先上成品图,总体还是比较满意,切割挡板的适合稍微有点歪,但是不影响使用。
back
内部如图
inside
原挡板
original
魔改挡板
modified

已经测试一周,目前还是比较稳定,X710-DA4由于没有了phy芯片热量少了很多。

软件系统:
底层系统:esxi
软路由系统:routeros v7,v7系统现在还在beta阶段,详见RouterOS V7 测试(持续更新至正式版发布)
应用操作系统:ubuntu

网络拓扑图待更新

ps:联想tiny系列迷你主机各个型号对比
M720Q主板B360
M920Q主板Q370,单m.2 SSD,支持雷电扩展卡
M920X主板Q370,双m.2 SSD,支持雷电扩展卡,支持标准电压CPU(不带T的65w tdp),支持AMD RX560独立显卡
P330主板Q370,双m.2 SSD,支持雷电扩展卡,支持标准电压CPU(不带T的65w tdp,支持vPro CPU),支持NVIDIA P620/P1000独立显卡