News

Linux 無線網卡加 PPPoE

Contributed by TyroneYeh on May 26, 2010 - 09:04 AM

之前 Linux 開機的時候,就要手動用 pppoe-start 來連線 PPP,因為要等 Wireless 無線網路連上 AP 後才能連 PPP,不過前一陣子更新 kernel 的時候掛點修復後有找到一個方法。

就是在 /etc/conf.d/net 中加 postup() 跟 postdown(),我的無線網卡為 ath0,用 postup 判斷 ath0 連上之後在看看 ppp0 存不存在,不存在就執行 pppoe-start

postup(){
case "${IFACE}" in
"ath0")

if ! interface_exists ppp0;
then
/usr/sbin/pppoe-start || logger -t pppoe-start "PPPOE-START starts Faild."

fi

;;
esac
return 0
}

 那 postdown() 要做什麼? 我覺得是無線斷線的時候要幹嘛!?所以我就寫了這樣

postdown(){
case "${IFACE}" in
"ath0")

if ! interface_exists ppp0;
then
/usr/sbin/pppoe-stop || logger -t pppoe-stop "PPPoE Stoping..."
/etc/init.d/shorewall stop || logger -t shorewall "Shorewall Stoping..."
fi

;;
esac

return 0
}

就是把 pppoe-stop 也關掉還有 Firewall 服務...

如果不是 Wireless 斷掉怎麼辦?是 ppp 斷了呢?ppp 會自動再連,不過 Firewall 因為有用 multi route 多路由的設定,Firewall 需要重新啟動,就在 /etc/ppp/ip-up.d/ 寫一個 60-firewall.sh,內容為:

#!/bin/sh

/etc/init.d/shorewall restart
/etc/init.d/ulogd restart

因為 Firewall 用 ulog 來記錄 Log 部份,所以 ulog 也要重啟,這時應該想說為什麼會有多路由呢? 因為 Wireless 無線連上 AP 之後就可以上網了啊,連 PPP 不就又多一個上網的路由,那就要定義多路由的規則囉。

 

發票登錄摘要

使用者數 256 位
發票張數 21367張
花費金額 2266535 元
中獎金額 62074600元
金額比率 2738.74 %