嘛……为了追求极致稳定的艹墙体验,又买了Conoha的一个IP(350日元/月),比买一个VPS便宜好多呢,结果配置的时候快被搞炸了……
关于Linux的使用和网络方面的概念我懂的其实也很少,如果出现错误望指正!
Conoha方面在添加新的IP后不会给你自动做好interface,所以需要用户自主操作。Conoha官方提供了一篇给CentOS的教程,可惜我是Ubuntu,这两个发行版网络方面差别还挺大的其实……
假定我们有两个公网IP,信息如下:
Interface | IP Address | Gateway |
---|---|---|
eth0 | 10.10.10.10 | 10.10.10.1 |
eth1 | 10.10.15.15 | 10.10.15.1 |
首先第一步是编辑/etc/network/interfaces,在原有的基础上填上一些内容。修改后interfaces是这样的,你需要按实际情况修改eth1的IP和掩码:
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet dhcp iface eth0 inet6 dhcp accept_ra 1 auto eth1 iface eth1 inet static address 10.10.15.15 netmask 255.0.0.0
重启网络后你就能在ifconfig内看到eth1啦。
然后就是路由的问题了,先在/etc/iproute2/rt_tables内添加两行(Old用于原来的IP,new用于后来添加的IP)
252 old 251 new
这里我写的是old和new,实际上你可以取你自己喜欢的名字啦~
然后就是在/etc/rc.local的exit 0之前添加这些
ip route flush table old ip route add default via 10.10.10.1 dev eth0 src 10.10.10.10 table old ip rule add from 10.10.10.10 table old ip route flush table new ip route add default via 10.10.15.1 dev eth1 src 10.10.15.15 table new ip rule add from 10.10.15.15 table new
这样两个IP都能正确的访问到我们的这一台VPS,同时VPS本身还是通过eth0来访问网络~
如果此时你的追加IP仍然不能Ping通,但是如果将追加IP的网关设置为默认网关后,可以正常上网,那么请检查VPS的控制面板中,追加IP的入站授权设置(如下图)!
如果设为默认网关还是不能上网……自己检查一下IP之类的东西有没有错吧……
然后就是Shadowsocks的设置了。我采用了supervisor来管理两个不同的shadowsocks服务端,首先写两个不同的配置文件:
/etc/shadowsocks/public.json
{ "server":"10.10.10.10", "server_port":12450, "local_port":1080, "password":"public password", "timeout":600, "method":"aes-256-cfb" }
/etc/shadowsocks/private.json
{ "server":"10.10.15.15", "server_port":12450, "local_port":1080, "password":"private password", "timeout":600, "method":"chacha20" }
然后呢,在写两个supervisor的配置文件:
/etc/supervisor/conf.d/shadowsocks_public.conf
[program:shadowsocks_public] command=ssserver -c /etc/shadowsocks/public.json autostart=true autorestart=true user=nobody
/etc/supervisor/conf.d/shadowsocks_private.conf
[program:shadowsocks_private] command=ssserver -c /etc/shadowsocks/private.json autostart=true autorestart=true user=nobody
所有的一切完成后,重启VPS,然后拿出你的设备开始测试吧~