上禮拜才在說自由軟體社群的幾位開發者正在合作修改 Madiwifi HAL 驅動程式。結果週五的時候,為 Atheros Communications Inc 工作的 mcgrof 公告了一個重大的消息,就是將 Atheros 802.11a/b/g 原本私有授權的 HAL 驅動程式以 ISC licence 授權開放出來

於是我們除了有開放原碼的 ath9kath5k 也可以名正言順的參考 HAL 原始碼來實做了!雖說 code base 已經有顯著的不同,但最大的差別就是原本被 NDA 牽制,只能讀改 HAL 原始碼,不能投入 ath5k 開發的軟體工程師,現在被解禁了!:D

如此一來,madwifi 的死期將至

還記得我在 OSDC.TW 2008 無線網路架設說過 OpenWrt trunk 的 Atheros MadWifi hal binary 有相容性問題,以至於某些網路卡無法連接使用。

HAL 是所謂 Hardware Abstraction Layer,是 MadWifi 驅動程式的核心,也是少數由於版權的緣故無法提供程式碼,而只能以二進位檔案散佈。因此某些驅動程式的問題,在沒有開放原碼的狀態下,大部分的開發者就算想修改也無能為力。

最近幾個月來,Madwifi Team 的幾位成員,包含 OpenWrtnbd, DD-WRTBrainSlayerMaksat Wireless 開始合作以 Atheros 的新 HAL 與 BSD 大神 Sam Leffler 的程式碼為基礎,改進了新版的 HAL 驅動程式,修正許多過去已知的問題與加強訊號抗擾性。目前仍陸續改版測試中,新版 HAL 與程式可於 http://svn.madwifi.org/madwifi/branches/madwifi-hal-testing 取得。

其實這樣的合作一直在進行,但礙於 Atheors 簽訂條款有權可讀相關程式碼的人並不多,許多的討論都是在私下進行的。如此一來造成自由軟體社群間的溝通出現隔閡,造成許多新來後到的人無法了解狀況。於是 mrenzmann 決議將原本封閉的郵遞論壇開放為 madwifi-project,希望可以因此塑造一個比較健康的溝通環境。

最近 MadWifi 社群也在探討未來的發展走向,由於目前的 Code Base 過於雜亂,眾人已無力維護。希望最終目標為從封閉的 HAL 驅動程式改為使用正在開發中的 ath5k/ath9k 等完全開放原碼的驅動程式。為此,madwifi 正在徵求意見調查,希望可以了解大家使用 Atheros 相關無線網路卡的驅動程式時,最需要的功能是哪些 ? 若你也是用 Atheros 的無線網路卡,不妨填填此問卷調查吧。

(對,說得是你們這些 EEEPC/Acer One/Netbooks 使用者阿)

某些原因你可能會想更改你的 MAC Address,像是你的 ISP/宿網只允許你使用註冊的 MAC Address 上網時。

若你使用 Debian GNU/Linux ,可以修改 /etc/network/interfaces 中的設定,在你的網路卡設定中加入如下參數

# The primary network interface
allow-hotplug eth1
iface eth1 inet dhcp
    hwaddress ether 00:05:9b:c5:5b:68

如此 ifupdown 便會在帶起網路時,一併更改地址為上述指定之 00:05:9b:c5:5b:68. 若你純粹想幹壞事,可以安裝 macchanger 來臨時亂數更改 MAC Address,改法如下

# The primary network interface
allow-hotplug eth1
auto eth1
iface eth1 inet dhcp
    pre-up macchanger -A eth1

文件請參考 interface(5). 對了,若你想更改是 madwifi 驅動之無線網路卡介面,請記得在開啟 VAP 前對 master device 進行 MAC Address 更改

這是一篇 Tip.