作者wryyy (我是八拉)
看板FreeBSD
标题Re: [问题] 在同一条dsl线路拨接多个pppoe的问题( …
时间Fri Jun 20 17:56:35 2008
※ 引述《wryyy (我是八拉)》之铭言:
: 各位先进,小弟最近被迫使用FreeBSD架设NAT,问题都已解决,但是非常怪异,请拨冗检
: 视一下,谢谢。
: 1. 环境如下:
: OS: FreeBSD 7.0 Release AMD64
: 网路介面:Intel 82559 -> fxp0 这是对外的装置
: Realtek 8139 -> rl0 这是对lan1的装置
: Nvidia onboard ethernet -> nfe0 这是对lan2的装置
: 连线环境:Hinet光世代 10m/2m fix address x 1 + dynamic address x 7
: 2. 需求:
: 在fxp0上拨接取得两个浮动位址(tun0与tun1两个介面),lan1对外由tun0而lan2由
: tun1出去
: 3. 遭遇的逆境:
: 最早以FreeBSD Handbook为范例:
: http://www.freebsd.org/doc/en/books/handbook/pppoe.html
: 将/etc/ppp/ppp.conf作如下设定:
: default:
: set log Phase tun command
: set ifaddr 10.0.0.1/0 10.0.0.2/0
: dyn1:
: set device PPPoE:fxp0
: set authname YOURLOGINNAME
: set authkey YOURPASSWORD
: set dial
: set login
: add default HISADDR
: dyn2:
: set device PPPoE:fxp0
: set authname YOURLOGINNAME
: set authkey YOURPASSWORD
: set dial
: set login
: add default HISADDR
: 设定完後,以指令:
: ppp -ddial dyn1
: ppp -ddial dyn2
: 拨接後,得到两个介面tun0与tun1,但是tun1却未能成功取得ip组态
: 检视/var/log/messages,有如下的错误讯息:
: tun1: Warning: iface add: ioctl(SIOCAIFADDR, 211.123.234.321/24 -> \
: 211.123.234.254): File exists
不好意思,上一篇发文时没注意到,把最开头的tun1打成tun0。
已修改
: tun1: Error: ipcp_InterfaceUp: unable to set ip address
: (由tun0的组态可得知,gateway的ip address为:211.123.234.254)
: 4. 解决:
: a. 修改/etc/ppp/ppp.conf成:
: default:
: set log Phase tun command
: set device PPPoE:fxp0
: set dial
: set login
: enable dns
: nat enable yes
: nat same_ports yes
: nat use_sockets yes
: set reconnect 15 10000
: enable dns
: dyn1:
: set ifaddr 0/0 1.1.1.1/32
: set authname YOURLOGINNAME
: set authkey YOURPASSWORD
: add default HISADDR
: dyn2:
: set ifaddr 0/0 1.1.1.2/32
: set authname YOURLOGINNAME
: set authkey YOURPASSWORD
: b. 拨接
: ppp -ddial dyn1
: ppp -ddial dyn2
: c. 以ifconfig 检视结果:
: tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1492
: inet 211.123.234.231 --> 1.1.1.1 netmask 0xffffffff
: Opened by PID 91340
: tun1: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1492
: inet 211.123.234.211 --> 1.1.1.2 netmask 0xffffffff
: Opened by PID 79523
: d. 测试状况:分别用ping -S 指定两个source address去 ping 168.95.1.1都可以通;
: routing table如下:
: Internet:
: Destination Gateway Flags Refs Use Netif Expire
: default 1.1.1.1 UGS 0 750922 tun0
: 1.1.1.1 211.123.234.231 UGH 1 0 tun0
: 1.1.1.2 211.123.234.211 UGH 0 0 tun1
: 10.0.0.0 link#3 UC 0 0 fxp0
: 10.0.0.2 link#3 UHLW 1 0 fxp0
: 10.250.4.3 link#3 UHLW 1 1 fxp0
: localhost localhost UH 0 898 lo0
: 192.168.1.0 link#4 UC 0 0 nfe0
: 192.168.2.0 link#5 UC 0 0 rl0
: 5. 真正的问题:
: 目前已经用pf做好source routing及nat了,从内部网路的windows以tracert测试到
: 168.95.1.1所经过的路由也很明确的显示由此FreeBSD NAT box出去所经过的第一个节点
: 的确是
: 211.123.234.254
: 这个gateway,但是为何在routing table里default gateway及ifconfig的显示会是如此
: 的怪异呢?
: 虽然目的已经都达成,但这样的设定有没有可能造成一些其他未知的不良影响呢?
: 如果这不是一个好的解决方式,还有更好的办法吗?
: 请各位先进不吝指教,谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.160.235.209