找回密码
 注册

QQ登录

只需一步,快速开始

楼主: spicahan

关于用软件VLAN处理IPTV的方法

[复制链接]
 楼主| 发表于 2012-2-11 23:31:46 | 显示全部楼层
chmjiong 发表于 2012-2-11 20:47 0 ^& \. L5 y& W( ]& S' p8 P7 |
无论何种vlan配置,都是下面这个结果:
  [2 [2 s& E5 n7 S/root$ swconfig dev ar8216 show7 W; i( g+ q6 [
Failed to connect to the swit ...
+ y3 q' R1 Z7 O- q4 E
那你在正常起来之后,跑一下dmesg, 把结果贴一下吧。或者你试试 swconfig dev eth0 show
 楼主| 发表于 2012-2-11 23:48:37 | 显示全部楼层
tywg001 发表于 2012-2-11 21:19
: j# O* H' H9 p不好意思,openwrt的端口映射怎么操作?我怎么做都不对,是写在firewall.user里
( f: ]5 m+ f1 q! J- r### Forward uTorrent GUI
* z6 k9 j! D: [) G# Ii ...

* y  Q! ]4 V. @6 N- ^我一般直接改 /etc/config/firewall 这个文件,比 iptables 直观一点。6 C3 y  I5 g! Z
( c4 `( d2 M- R  n1 `+ ~: I
IPTABLES我玩得也不是特别好。。你这个需求,似乎应该这样写:
" J, Q' c/ k! D% oiptables -I INPUT -p tcp --dport 800 -j ACCEPT* M" S! b6 N9 b3 I8 T
iptables -A PREROUTING -t nat -p tcp --dport 800 -j DNAT --to 192.168.1.90:800' s/ A- g, ]' W! ]! U
可能还需要这一行, L. t7 \* i4 l' y
iptables -A FORWARD -p tcp -d 192.168.1.90 --dport 800 -j ACCEPT. v2 X  V" c3 Z  c, r/ Z  T/ W# Y

0 b. j( n9 n8 |: V' c* @如果还是不行的话,你运行一下 iptables-save 把结果贴上来看看
发表于 2012-2-12 14:14:09 | 显示全部楼层
本帖最后由 chmjiong 于 2012-2-12 14:15 编辑
: y6 ]: C9 D. N; k3 y& a$ n
/ p* Y$ y3 v, J! ?5 W晕死了,trunk版的swconfig跑下来是这个结果:
6 a& b" B: m$ |/etc/config$  swconfig dev eth0 show" Z$ q! E8 g* M
Global attributes:3 b6 [7 `8 N. ]0 q1 O( B& N7 M
        enable_vlan: 1
! l1 h1 |/ U+ F" S6 [2 uPort 0:, H$ Z! N% N9 K& ^
        link: port:0 link:down
! f2 v& r& g9 j" C+ R: C        pvid: 1
" N  |  x. j; I' n5 w. }Port 1:7 s  M' k/ s+ S6 v$ m, C
        link: port:1 link:up speed:100baseT full-duplex txflow rxflow auto 3 v3 G- o+ P* a- }
        pvid: 1
7 @2 a9 A0 Q' X9 Q- s6 dPort 2:
" D" l0 K1 f0 o" |5 ^        link: port:2 link:down
+ s( _* u$ Z" a6 {0 }        pvid: 1
1 O. k6 O- f; Y& m- PPort 3:- C2 r: n3 Y/ ]/ @2 y: ^
        link: port:3 link:down" z1 i& C: K4 e
        pvid: 1- Q5 l% U% ~9 l  \# w
Port 4:
, n! p1 V9 b/ {. f        link: port:4 link:down9 D& i& s! q5 ]1 k) X0 O( w
        pvid: 1
/ n( ^% ~  A4 s# z* m( J" ~4 UPort 5:: W, C" p0 E; g8 d% R5 Y- c
        link: port:5 link:up speed:100baseT full-duplex txflow rxflow auto
5 s- f- S& e# ~4 l! A5 N        pvid: 0$ ]% i& X, ?4 s
VLAN 1:/ `/ g  c" N' R0 O  X) ?/ h
        vid: 1
0 v' C9 t6 x8 z. o! v1 G* E& ^        ports: 0 1 2 3 4 3 K2 }% s1 I$ [
port5竟然是eth1,好多资料都说tew632有独立wan的
 楼主| 发表于 2012-2-12 16:43:07 | 显示全部楼层
chmjiong 发表于 2012-2-12 14:14 $ X- J: N0 f1 H, ]* w" L
晕死了,trunk版的swconfig跑下来是这个结果:
( [  w" g$ F* ]3 ^3 x/etc/config$  swconfig dev eth0 show
1 d# A+ z7 S$ x9 ]" d/ c/ k1 L& aGlobal attributes ...
) w0 t* L2 h# M7 \0 [: D
"port5竟然是eth1,好多资料都说tew632有独立wan的", 这句话我完全没看明白。$ E. P* }# W2 K1 D- b9 U
从你这里显示的结果来看, port 5明明是eth0所在的交换机上的,估计是CPU端口。( l  m# f$ _: z6 }' [# a* `
从OpenWrt里的默认设置来看,wan是走eth1的,所以这个tew632就是有独立的wan的。# B. g5 T+ |- E" U3 D; ?9 A
9 w- i, J2 k4 C- M! q
最后,我刚搜了一下 AR8216 的 datasheet, 我觉得你不用再去折腾硬件VLAN了,它上面清清楚楚地写着只支持16个VLAN entries.
发表于 2012-2-12 17:23:09 | 显示全部楼层
本帖最后由 chmjiong 于 2012-2-12 17:25 编辑
' m, `& x# f% ?
spicahan 发表于 2012-2-12 16:43
' m8 L& C) ?% \% R" }5 U% n1 X( P"port5竟然是eth1,好多资料都说tew632有独立wan的", 这句话我完全没看明白。7 `( a3 g0 E) I% l
从你这里显示的结果来看, ...

9 a7 K4 i, f. n* [1 z% d* Z
/ p' u8 d6 V# q$ O. |我一早就怀疑8216只支持到16个valn{{gangzai10{{' N/ ]0 `- ?9 Z" _8 r4 K$ u$ _- Z
但是port5的事情还是很难理解,我配wan到eth0.2,valn2写为'0t 4‘的时候,port4可以通外网* D! V% B; I. L) }- v/ v2 ?
6 s5 b7 j3 d; E' m* N- L# \
/etc/config$  swconfig dev eth0 show+ j& A$ |' W% [& N
Global attributes:; X! y2 g; z- ]3 Y
        enable_vlan: 18 X. B0 W( _! s
Port 0:
6 n& j7 _0 P$ j8 F- I        link: port:0 link:down
# s$ d3 ]* I* m        pvid: 02 z+ v! e+ P+ q8 Y  R: c) z6 y
Port 1:
- A; e5 Z: x+ h  Z! _        link: port:1 link:up speed:100baseT full-duplex txflow rxflow auto   Y" [8 E) a7 v% l. n! A1 Z
        pvid: 1
1 {! `: F' i  f6 x8 I. X# oPort 2:9 J. E5 i7 [% n% K# V
        link: port:2 link:down
$ B* [4 ~% F8 R9 D: l        pvid: 1
- ?' w! H* g3 j$ y8 yPort 3:# e6 r% V+ a2 R& ]+ L
        link: port:3 link:down
5 V) r+ }* w4 S% f. H8 t6 H, _, W        pvid: 1& b+ F7 E9 j' [5 B1 s' y0 D
Port 4:  a- }$ k; a- H4 U7 ~# n" {
        link: port:4 link:up speed:100baseT full-duplex txflow rxflow auto
4 J/ x4 w5 ^! \2 ^! u. s* C        pvid: 2  r6 u; U) \$ R; J
Port 5:
$ c. n9 }8 q1 r4 d# A        link: port:5 link:down
  n9 y7 Y+ }: O: i0 q. l- C        pvid: 09 ~) t& _. L: W9 {/ ]
VLAN 1:
2 R" V, s7 m, i/ g        vid: 1. M( X" p/ v, X* Y. ?
        ports: 0t 1 2 3 4 ~# I1 {- C6 t7 a1 k9 z, F
VLAN 2:
$ g3 j$ l6 ?! A1 _3 s2 R        vid: 2" [" K0 S4 G$ i
        ports: 0t 4 6 o' u. T! R% f5 a* T$ ~

! T( n. k% Y2 ~. _/ y  K" t这个时候port4拿到外网IP了  C9 G3 R/ O: z. X' @9 y/ h- t2 b1 m% J
network如下:
. m& k( N! M" R+ e" Lconfig 'interface' 'lan'+ S+ w9 H( ^0 C' L9 j6 c( j& r% s3 z  p
        option 'ifname' 'eth0.1'
8 Z8 L% U* z+ W3 S! a6 ~        option 'type' 'bridge'4 E) `6 A( s9 d; D/ m& P& ^( s
        option 'proto' 'static'1 ]$ H4 O5 m! a  \
        option 'ipaddr' '192.168.1.1', V& b/ {5 _8 H6 F/ _3 c0 B
        option 'netmask' '255.255.255.0'. d" Y5 V4 V" ~! T4 p) }

1 w/ A/ h' }( k: F" T" x6 Q- rconfig 'interface' 'wan'
3 }. P( P6 d8 y: \        option 'ifname' 'eth0.2'+ ]1 O/ v) J6 J
        option 'proto' 'dhcp'
- v. P5 l9 L3 z+ B8 J/ v; Q# R9 v" }. S4 F+ ~+ ]& z
config 'switch'' |; g. X5 @3 i/ v) w: k2 G
        option 'name' 'eth0'
* X) D2 Y2 V) T4 D7 p        option 'reset' '1'
/ x' {) |! s5 t, h6 j4 T& z        option 'enable_vlan' '1'
# V9 |6 z* }* s- z  s/ \
9 G$ i$ C( ]" N4 ]config 'switch_vlan'8 |$ U- @: D( Z8 s4 Q/ P
        option 'device' 'eth0': Y2 v* U* q9 \  _
        option 'vlan' '1'; L6 }( i6 E6 |' N, x' r. J. J
        option 'ports' '0t 1 2 3'& j  N9 Q) U4 D1 s6 F  O
% @& ?$ |" n, c9 K. D9 d( K4 d* N

; G+ E' s, ?" X* @$ H% H2 j( o5 {config 'switch_vlan'
) v+ e1 z' S+ o- b$ x. V  K1 C6 T: A        option 'device' 'eth0') P/ S0 J& b6 I; A! R" V# \2 T
        option 'vlan' '2'
$ X: k) v$ |/ X/ F# ~$ k/ C* k7 M! @        option 'ports' '0t 4'
 楼主| 发表于 2012-2-12 18:10:13 | 显示全部楼层
chmjiong 发表于 2012-2-12 17:23
# X2 k: n* p2 l4 V$ I4 |4 n我一早就怀疑8216只支持到16个valn
. @/ m. ?$ t: A7 ]6 ]但是port5的事情还是很难理解,我配wan到eth0.2,val ...
" h% Z+ C/ S; o' G- F8 J" n
这个事情是这样的,因为它只支持16个vlan, 所以你设的 51, 85, 81 其实只有二进制的低四位是有用的,也就是 51 % 16 = 3, 85 % 16 = 5, 81 % 16 = 1, 可以看出来这里 81 其实就是 1, 这样就和 LAN 冲突了(已经是1了)。如果你想再验证一下的话,可以试试保持 WAN 设成 VLAN 81, 把 LAN 设成 2, 应该是一样的。
发表于 2012-2-12 21:58:01 | 显示全部楼层
spicahan 发表于 2012-2-12 18:10 8 o( c5 ]( ]1 d, c) K, I, |
这个事情是这样的,因为它只支持16个vlan, 所以你设的 51, 85, 81 其实只有二进制的低四位是有用的,也就 ...

6 j  [; n2 U: S不是,我现在还是搞不明白它的CPU接口究竟是port0还是port50 J7 X: a2 u. P  I1 V
说是port0吧,它的wan是连到port5上的,说是port5吧,它的port0明明就是连cpu的
: A! G% P, T' W( p& N; J5 I+ @7 s1 t0 I
 楼主| 发表于 2012-2-13 08:37:12 | 显示全部楼层
chmjiong 发表于 2012-2-12 21:58 ) g, F. }  \/ E* n$ b
不是,我现在还是搞不明白它的CPU接口究竟是port0还是port5  Z/ z' D# l* E/ y5 E4 v
说是port0吧,它的wan是连到port5上的,说是 ...

3 L) ]/ h; H. X+ G* v你把所有的网线都拔掉,只用wifi连上去,看 swconfig dev eth0 show, 哪个 port 不是 disconnected 的,那个就是 cpu 端口。
发表于 2012-2-13 16:27:28 | 显示全部楼层
我把你给我的命令写了,还是不好用,这是我用iptables -S命令的结果
) k  E7 A  F% q) ~root@OpenWrt:/etc# iptables -S
( l: H4 i: P2 Q0 t-P INPUT ACCEPT
0 Y% ]3 a( I* \9 W$ |5 l4 S-P FORWARD DROP7 y6 Y: w  }) i& A" i' j8 F
-P OUTPUT ACCEPT0 K7 l  h& y+ A- c" B
-N forward  f4 _1 Z& w6 s: _
-N forwarding_lan
$ K2 _: w' l& \4 j8 `# Z' A+ o-N forwarding_rule
' C' u3 \4 @9 ^2 z3 \, ~. I7 S-N forwarding_wan3 x! S. s7 P2 B: U9 _* ]) G
-N input
: c. ]+ I8 F6 X  X8 a-N input_lan
, d1 E* b  R# w* N% S2 U3 p2 [-N input_rule
5 V& _1 d# @2 Y: `9 R4 s-N input_wan% E4 X; p1 ?9 U  S& ?: a6 ?3 s$ M
-N output
# w* a9 ?/ v7 c* u-N output_rule
' x) i( _: ^7 R-N reject; y! |1 F- m& x# X
-N syn_flood" D( P, B: J) a8 N: d4 o5 s- H7 W, q! i
-N zone_lan0 |9 h! k# X' a* ?
-N zone_lan_ACCEPT
7 A" x- P" [  W/ x- _-N zone_lan_DROP0 h% T& T# j) c1 ?& E
-N zone_lan_MSSFIX  ?/ }' g5 F2 b5 {
-N zone_lan_REJECT7 F2 @- G! ]; k
-N zone_lan_forward. c3 U3 x5 O2 g+ E& o) B; d) E4 R3 C
-N zone_wan* W: [7 T. t9 S3 W/ r
-N zone_wan_ACCEPT
# ]! z' ~; I6 Q# H2 X# q-N zone_wan_DROP$ ]2 o7 N, Y/ O& S, [. X0 O
-N zone_wan_MSSFIX
3 P' T# _" z2 ?/ `$ ~% w1 Z% f-N zone_wan_REJECT, ~* \$ \  {) E- L3 g- v
-N zone_wan_forward$ }1 k9 K& W, ?9 U! T. P
-A INPUT -p tcp -m tcp --dport 3389 -j ACCEPT 0 p/ q# z/ U( l1 N3 Z
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 5 ~3 Q8 K* r% P+ y  j) \
-A INPUT -i lo -j ACCEPT + a6 u; g; f! L, R6 S
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j syn_flood
7 |$ `0 f8 O+ D$ c7 M8 j-A INPUT -j input_rule 4 q9 w$ S( U/ R
-A INPUT -j input $ e6 I& t' x- B5 x8 c( n# i9 r
-A FORWARD -j zone_wan_MSSFIX $ ^( y4 H! ]( A9 E) A7 N! }( J
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT ! D! W/ ?" _& Y/ r- |! \
-A FORWARD -j forwarding_rule
; M) Q5 H" d  o8 m, B' T# a4 `/ G-A FORWARD -j forward : h4 n- D1 s# J9 K- ]# j
-A FORWARD -j reject
8 l& V9 V8 X+ J6 N1 m4 E+ h-A FORWARD -d 192.168.1.90/32 -p tcp -m tcp --dport 3389 -j ACCEPT
8 j% H$ x$ F9 N5 p; W-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
' d5 B- ?3 ^1 u% R+ z6 L-A OUTPUT -o lo -j ACCEPT 8 t8 s4 y9 L! k9 |
-A OUTPUT -j output_rule
  K% i1 ^* K8 ^$ e5 `& }-A OUTPUT -j output
% j7 }7 H- B' L5 y' r, Y$ z-A forward -i br-lan -j zone_lan_forward
, r+ w7 a% o- K/ o9 Y8 G-A forward -i pppoe-wan -j zone_wan_forward & l9 K$ U: i2 W# Q' m2 y, l, n
-A forwarding_rule -i tun0 -o br-lan -j ACCEPT
- N5 m+ b7 m5 c( Q* t) p-A forwarding_rule -i br-lan -o tun0 -j ACCEPT ( Q# ?1 x7 A& i  }
-A input -i br-lan -j zone_lan : [& l6 ?0 y/ g6 P- l1 a5 `
-A input -i pppoe-wan -j zone_wan
5 ?1 G7 x) }6 S-A output -j zone_lan_ACCEPT
- x$ [2 ?7 e  n5 }4 {-A output -j zone_wan_ACCEPT - o8 R* k) t/ s% k0 Y( W' _
-A reject -p tcp -j REJECT --reject-with tcp-reset
- D4 {8 k2 b, U  [( ?1 p7 k-A reject -j REJECT --reject-with icmp-port-unreachable
8 _4 i4 B8 K+ k! @8 C$ }-A syn_flood -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 25/sec --limit-burst 50 -j RETURN 8 T% j5 b; Y# e) V0 y) L& l" F" k8 N
-A syn_flood -j DROP
. u' a% P/ }" T' L; j. A' s-A zone_lan -j input_lan # p0 n: P+ L. ]* g- U: L& g7 T+ D- L, x
-A zone_lan -j zone_lan_ACCEPT # O2 f. s& F) v* J# z2 N8 ]  m
-A zone_lan_ACCEPT -i br-lan -j ACCEPT
2 W  d' o  R( C! U% R-A zone_lan_ACCEPT -o br-lan -j ACCEPT 9 o2 U: h( E( z8 T( v6 c* B1 X4 H- r2 o
-A zone_lan_DROP -i br-lan -j DROP ) E& D# c9 \% o: [
-A zone_lan_DROP -o br-lan -j DROP
( h5 t/ Z+ J) p9 ?( x3 C-A zone_lan_MSSFIX -o br-lan -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
$ }( k) b6 k% u2 Q-A zone_lan_REJECT -i br-lan -j reject
+ a' \9 v) f% x* O: x-A zone_lan_REJECT -o br-lan -j reject # E/ S+ U1 K) L
-A zone_lan_forward -j zone_wan_ACCEPT
. o! m' E! f1 r% ^: e( u( p9 L-A zone_lan_forward -j forwarding_lan
' {0 k9 U$ l3 B-A zone_lan_forward -j zone_lan_REJECT $ N: O5 i0 b( J/ R, i$ U# e
-A zone_wan -p udp -m udp --dport 68 -j ACCEPT
( e1 i/ Y. r1 v5 }- d, w- T-A zone_wan -p tcp -m tcp --dport 2601 -j ACCEPT
) b; h% t! Y$ E$ y4 ]# F; ^-A zone_wan -p tcp -m tcp --dport 800 -j ACCEPT 2 \0 q' S8 m. i; S0 V4 W
-A zone_wan -p udp -m udp --dport 3389 -j ACCEPT
3 |. n+ b1 [  N! Q9 s' z-A zone_wan -p tcp -m tcp --dport 3389 -j ACCEPT
. j9 n: \2 c# i9 }- c5 B' X5 H-A zone_wan -j input_wan
- v* C  \& S5 p, G3 k-A zone_wan -j zone_wan_ACCEPT   i/ n, x) z/ a1 o) |
-A zone_wan_ACCEPT -i pppoe-wan -j ACCEPT - r) I9 U* b/ `$ b+ B$ e5 q+ f
-A zone_wan_ACCEPT -o pppoe-wan -j ACCEPT
% }1 Y7 x8 c6 J  S-A zone_wan_DROP -i pppoe-wan -j DROP ' M( K+ Z8 y: O4 u
-A zone_wan_DROP -o pppoe-wan -j DROP ; R% j7 X0 z/ t& B% B
-A zone_wan_MSSFIX -o pppoe-wan -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
3 `9 y+ Z' }$ f- ~3 @; W-A zone_wan_REJECT -i pppoe-wan -j reject ( Y5 R# |1 h/ K- Q7 Z6 e' n) t4 |
-A zone_wan_REJECT -o pppoe-wan -j reject
" E' s) F" u1 @% g% Q& }: j" j-A zone_wan_forward -j forwarding_wan ( i; M( Y  j( Y# z. _1 f- G+ k! d
-A zone_wan_forward -j zone_wan_REJECT 6 d) ?1 m$ M2 ^5 v0 ^
这样3389我还是从外网连接不上
 楼主| 发表于 2012-2-14 10:21:38 | 显示全部楼层
tywg001 发表于 2012-2-13 16:27   Y0 e$ g' @% \, I% ~
我把你给我的命令写了,还是不好用,这是我用iptables -S命令的结果" {0 e) d: y; O$ E: x  _4 I# n& o
root@OpenWrt:/etc# iptables -S
4 P  R1 R, e+ O-P  ...

2 s, e* G* y( t5 e8 e, }$ ^% s! P& V你这个 -S 只给出了默认的表的规则,还需要执行 iptables -t nat -S, 看一下 nat 表的规则。$ n) T4 A0 U+ n7 K- Z. w
我建议你先执行 iptables -F 和 iptables -t nat -F) P7 t" o; C/ ]* H$ U
然后再执行我前面说的命令试试看。
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|宽带技术网 |网站地图 粤公网安备44152102000001号

GMT+8, 2025-5-2 02:46 , Processed in 0.027545 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5 Licensed

Copyright © 2001-2020, Tencent Cloud.

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