tomato配置VLAN

作者:tKC 发布时间:August 25, 2011 分类:IT技术,软路由

我和一个朋友各自有自己的宽带,由于住的近,就拉了条网线做互联,虽然看似简单,可是具体到技术实现又有了问题,以下是几天的漫长折腾,写这篇文章的时候才完全搞定。

首先说一下具体需求:

第一,两家局域网要做互联,要可以互访;

第二,两家正常上网还要走各自的宽待,不能相互影响(dhcp各自是各自的);

第三,我家宽带访问教育网快,我需要为我朋友提供部分地址的路由;
首先就排除了使用同一网段的打算,因为这样无法做复杂控制,也无法通过dhcp来同时搞定两家的所有计算机(不想人工设置IP地址,呵呵)

既然决定分两个网段,那么互联就成问题了,还好我的路由器(netgear 614v6修改版200M的CPU/4M固件/32M内存)支持自制系统,以前就刷了tomato固件,由于我更需要openvpn的功能,所以选择ovpn的mod版本,花了很多时间配置VPN,这里不详细说,主要说说怎么搞定vlan的吧,实现vlan就相当于让我的路由器支持两个网段的客户端,并且也可以互相路由了。

放狗搜了一下,发现中文资料太少了,于是还是上www.google.com吧,找到一篇很有价值的文章,链接如下

http://www.seiichiro0185.org/doku.php/blog:creating_a_seperate_guest_network_with_tomato

懂英文的建议看看,很简单其实

说说我的过程,路由器型号netgear 614v6

我家的网络192.168.1.0/24 网关192.168.1.1

朋友家的网络192.168.2.0/24 网关192.168.2.1

!!!注意:以下操作请谨慎操作,除非你知道你自己在做什么,本人不对因此发生的故障负责!!!

先要命令行登入路由器,telnet或者ssh,看你的路由器固件了

nvram set vlan0ports="2 3 4 5*"
nvram set vlan2hwname=et0
nvram set vlan2ports="1 5*"
nvram commit


说说含义,第一条,设定我家里的本地vlan0端口,2口,3口,4口还有无线

第二条,设定vlan2,第三条,设定vlan2使用1口,这个口也就是我和我朋友互联的接口

完成之后就可以登陆进web界面操作了

先配置vlan2的IP,由于默认系统已经可以配置好vlan0,但新建的vlan2无任何配置,我们需要配置它的IP

Administration-Scripts-Init

在这下面填入vlan2的配置脚本

sleep 10;
ifconfig vlan2 192.168.2.254 netmask 255.255.255.0 up;


这句的含义是配置vlan2接口地址为192.168.2.254,我朋友家的网关是192.168.2.1

接着增加防火墙策略,允许vlan2

Administration-Scripts-Firewall

增加两行策略

iptables -I INPUT -i vlan2 -j ACCEPT;
iptables -I FORWARD -i vlan2 -j ACCEPT;


这里是允许访问所有网络,如果不希望访问某些网络的话,可以详细设置

比如下面这条就是不允许两个内网互访

iptables -I FORWARD -i br0 -o vlan2 -j DROP;

最后到我朋友家,在他家的路由器上增加几条静态路由即可

我家的网络192.168.1.0/24,网关是192.168.2.254

朋友需要借用的xxx.xxx.xxx.xxx/32,网关是192.168.2.254

OK,一切结束,重启一下路由器,看看是否有效。

标签: tomato, vlan

添加新评论 »

captcha
请输入验证码