存档

‘软路由’ 分类的存档

openwrt上配置pxe网络启动服务

2011年8月26日 tKC 评论已被关闭
新买了个带USB接口的无线路由器(中兴H118B),终于可以尝试把PXE网络启动服务全装在路由器上了,以前只是路由器上配置dhcp指向局域网的一台TFTP,现在可以完全跑在路由器上了。
方法很简单,刷机成openwrt,这个就不说了,太简单了,我刷的是http://downloads.openwrt.org/backfire/10.03/brcm-2.4/openwrt-brcm-2.4-squashfs.trx
如果只需要传统的pxe,也就是dhcp+tftp的话,openwrt全都自带,ssh登录进路由器,输入以下指令即可
uci set dhcp.@dnsmasq[0].enable_tftp=1
uci set dhcp.@dnsmasq[0].tftp_root=/mnt/usb/tftp
uci set dhcp.@dnsmasq[0].dhcp_boot=/mnt/usb/tftp/gpxelinux.0
uci commit dhcp  
注:/mnt/usb/目录是我U盘的位置
由于我用gpxe,所以还加入了ftp的配置,这样可以网络启动通过ftp来传输引导文件
#opkg install pure-ftpd
#vi /etc/config/pure-ftpd #按下面进行修改
config pure-ftpd
option port             "21"
option noanonymous      "0"
option chrooteveryone   "0"
option maxclientsperip  "5"
option maxclientsnumber "4"
option peruserlimits    "3:4"
option umask            "133:022"
option authentication   "unix"
option enabled          "1"
#vi /etc/passwd #增加下面一行创建ftp匿名访问的账户
ftp:x:500:500:Linux User,,,:/mnt/usb/tftp:/bin/false
注:这里配置的ftp为开发匿名访问,如果不需要匿名把option的noanonymous改成1就可以了

tomato配置VLAN

2011年8月25日 tKC 评论已被关闭

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

首先说一下具体需求:

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

第二,两家正常上网还要走各自的宽待,不能相互影响(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,一切结束,重启一下路由器,看看是否有效。

分类: 软路由 标签: