找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 5095|回复: 2

请问下 Openwrt 的几个问题

[复制链接]
这些问题一直找不到答案,在去嵌入式论坛前,在这里碰碰运气.

1. 一直不理解 Openwrt 与 交换机芯片 之间的工作原理,衍生很多疑问,如下
  Openwrt为什么会用到 vlan 来划分交换机端口?如果对比那些几十元的交换机,绝无可能会有操作系统也绝无可能有vlan,为什么它们这样做,而Openwrt偏要那样做(用vlan)?
  内核中是否存在一个交换机芯片的驱动?

2. 关于wan口
  以前知道在PC上把adsl modem接到某些交换机上是不能拨号的,有些交换机可以,只是不知道具体的原因。所以一直误以为路由器中的switch芯片只是提供5个 LAN 口,WAN只是 Openwrter 们自行配置的,后来看了很多Atheros的技术方案文档,发现WAN接口是单独设计的,是否同样需要额外的驱动(或者说代码)来实现switch芯片的WAN接口功能?
  也同样理解不了在db12这样的设备中,某个lan口被映射成wan口。
首先要明白wan口跟lan口必须是分离并且是独立的,为什么要分离呢?因为wan接的internet网,lan接的是内部网,它们是处于不同完全的两个网段,两个网段要通讯怎么做到? 这就需要对它们俩做路由,和nat地址转换.

怎么样让wan口和lan口分离?

有两种方法可以做到,一是物理上分割,比如一个猫+一个路由两个不同的设备,另一种就是vlan也可以实现将一个交换机的lan口分成vlan1,vlan2...相当于把一个设备拆成N个设备来用, 当然,这个功能是要芯片级支持的,不是随便拿台交换机就可以划分vlan.
对于rg100a来说,它根本就没有wan口,只有dsl口+4个lan口,但是它是支持vlan的,这样就好办了,只需把4个lan口拿出其中一个(例lan4)划分成vlan1,余下的划分为vlan0,那么就实现了把vlan1作为wan口的功能,vlan0作为lan口,vlan1(lan4)可以用来拔号连接internet,vlan0(lan1~lan3)作为连接pc等局域网,openwrt的作用就是1.划分vlan. 2,让vlan1和vlan0路由通讯.实际上rg100aa就相当于一台三层交换机的功能.

但另一种设备db120,它是有wan口的,就不需要划分vlan了,但是它也可以划分vlan,只要你喜欢,你可以弄出wan1,wan2等,就可以实现多条线路同时接入上网的,当然多wan多线叠加负载平衡那是软件的问题了.
回复

使用道具 举报

 楼主| | 显示全部楼层
首先要明白wan口跟lan口必须是分离并且是独立的,为什么要分离呢?因为wan接的internet网,lan接的是内部网,它们是处于不同完全的两个网段,两个网段要通讯怎么做到? 这就需要对它们俩做路由,和nat地址转换.


我的理解是如果从tcp/ip协议的分层角度去看,wan和lan都是等价的。wan是否在物理硬件(交换机芯片)中单独存在?如果存在,Openwrt是在内核层与交换机驱动来与wan这个设备通讯,还是需要再写一个wan口设备的驱动?

试想一下,一台pc两片nic,nic1接adsl,nic2接swtich(lan),通过pppoe技术nic1被分配到一个公网ip,那么只是nic1的ip1和nic2的ip2在互相做nat,而pppoe的作用只是和ISP沟通(辨别身份,计费,加密传输什么的),然后用ppp重新封装内网的tcp/ip数据包到ISP,其实pppoe都可以忽略的,为什么在嵌入式设备中要搞得这么复杂(单独分离出wan和lan)?

不过我一直认为上述的ip1和ip2通信是单纯的nat(ip转发),狭义上是不涉及到RIP这些路由功能的,可能只是需要经过内核中的路由表。

也觉得越说越跑题,越说越烦,越想下去就越有冲动去看底层的程序实现代码,不过看代码非我等小辈能做,或许还是用这句话问容易明白些:为什么adsl modem接到有些交换机可以在pc上拨号,有些交换机就不行?或许这样就能从另外一个侧面来了解这种设计思想。

望指正。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-5-18 10:13

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表