TwitterTwitter FacebookFacebook FlickrFlickr RSSRSS

20071013

MAC地址完美攻略(轉載)

如果你是通過校園網或小區接入Internet,那麼一定聽說過MAC地址。什麼是MAC地址,MAC地址在這種局域網環境中究竟起到什麼作用?下面就來介紹一下MAC地址的知識,MAC地址和IP地址的區別以及MAC地址在實際應用中所涉及到的安全問題。

  一、基礎知識

  如今的網絡是分層來實現的,就像是搭積木一樣,先設計某個特定功能的模塊,然後把模塊拼起來組成整個網絡。局域網也不例外,一般來說,在組網上我們使用的是IEEE802參考模型,從下至上分為:物理層、媒體接入控制層(MAC),邏輯鏈路控制層(LLC)。

  標識網絡中的一台計算機,一般至少有三種方法,最常用的是域名地址、IP地址和MAC地址,分別對應應用層、網絡層、物理層。網絡管理一般就是在網絡層針對IP地址進行管理,但由於一台計算機的IP地址可以由用戶自行設定,管理起來相對困難,MAC地址一般不可更改,所以把IP地址同MAC地址組合到一起管理就成為常見的管理方式。

  二、什麼是MAC地址

  MAC地址就是在媒體接入層上使用的地址,也叫物理地址、硬件地址或鏈路地址,由網絡設備製造商生產時寫在硬件內部。MAC地址與網絡無關,也即無論將帶有這個地址的硬件(如網卡、集線器、路由器等)接入到網絡的何處,都有相同的MAC地址,它由廠商寫在網卡的BIOS裡。MAC地址可採用6字節(48比特)或2字節(16比特)這兩種中的任意一種。但隨著局域網規模越來越大,一般都採用6字節的MAC地址。這個48比特都有其規定的意義,前24位是由生產網卡的廠商向IEEE申請的廠商地址,目前的價格是1000 美元買一個地址塊,後24位由廠商自行分配,這樣的分配使得世界上任意一個擁有48位MAC地址的網卡都有唯一的標識。另外,2字節的MAC地址不用網卡廠商申請。

  MAC地址通常表示為12個16進制數,每2個16進制數之間用冒號隔開,如:08:00:20:0A:8C:6D就是一個 MAC地址,其中前6位16進制數08:00:20代表網絡硬件製造商的編號,它由IEEE分配,而後3位16進制數0A:8C:6D代表該製造商所制造的某個網絡產品(如網卡)的系列號。每個網絡製造商必須確保它所制造的每個以太網設備都具有相同的前三字節以及不同的後三個字節。這樣就可保證世界上每個以太網設備都具有唯一的MAC地址。

  三、IP地址與MAC地址的區別

  IP地址基於邏輯,比較靈活,不受硬件限制,也容易記憶。MAC地址在一定程度上與硬件一致,基於物理,能夠標識具體。這兩種地址各有好處,使用時也因條件而採取不同的地址。
四、為什麼要用到MAC地址

  這是由組網方式決定的,如今比較流行的接入Internet的方式(也是未來發展的方向)是把主機通過局域網組織在一起,然後再通過交換機和 Internet相連接。這樣一來就出現了如何區分具體用戶,防止盜用的問題。由於IP只是邏輯上標識,任何人都隨意修改,因此不能用來標識用戶;而 MAC地址則不然,它是固化在網卡里面的。從理論上講,除非盜來硬件(網卡),否則是沒有辦法冒名頂替的(注意:其實也可以盜用,後面將介紹)。

  基於MAC地址的這種特點,局域網採用了用MAC地址來標識具體用戶的方法。注意:具體實現:在交換機內部通過「表」的方式把MAC地址和IP地址一一對應,也就是所說的IP、MAC綁定。

  具體的通信方式:接收過程,當有發給本地局域網內一台主機的數據包時,交換機接收下來,然後把數據包中的IP地址按照「表」中的對應關係映射成MAC地址,轉發到對應的MAC地址的主機上,這樣一來,即使某台主機盜用了這個IP地址,但由於他沒有這個MAC地址,因此也不會收到數據包。發送過程和接收過程類似,限於篇幅不敘述。

  綜上可知,只有IP而沒有對應的MAC地址在這種局域網內是不能上網的,於是解決了IP盜用問題。

  五、怎樣獲得自己的MAC地址

  MAC地址固化在網卡中的BIOS中,可以通過DOS命令取得。Win9x用戶可以使用winipcfg命令,Win2k/XP用戶可以使用ipconfig/all命令,其中用16進製表示的12位數就是MAC地址(圖1)。

六、MAC地址涉及到的安全問題

  從上面的介紹可以知道,這種標識方式只是MAC地址基於的,如果有人能夠更改MAC地址,就可以盜用IP免費上網了,目前網上針對小區寬帶的盜用MAC 地址免費上網方式就是基於此這種思路。如果想盜用別人的IP地址,除了IP地址還要知道對應的MAC地址。舉個例子,獲得局域網內某台主機的MAC地址,比如想得到局域網內名為TARGET主機的MAC地址,先用PING命令:PING TARGET,這樣在我們主機上面的ARP表的緩存中就會留下目標地址和MAC映射的記錄,然後通過ARP A命令來查詢ARP表,這樣就得到了指定主機的MAC地址(圖2)。最後用ARP -s IP 網卡MAC地址,命令把網關的IP地址和它的MAC地址映射起來就可以了。

我覺得Windows優化大師中自帶的工具不錯,點擊「系統性能優化」→「系統安全優化」→「附加工具」→「集群Ping」(圖3),可以成批的掃出MAC地址並可以保存到文件。


小知識:ARP(Address Resolution Protocol)是地址解析協議,ARP是一種將IP地址轉化成物理地址的協議。從IP地址到物理地址的映射有兩種方式:表格方式和非表格方式。ARP 具體說來就是將網絡層(IP層,也就是相當於OSI的第三層)地址解析為數據連接層(MAC層,也就是相當於OSI的第二層)的MAC地址。ARP協議是通過IP地址來獲得MAC地址的。
ARP原理:某機器A要向主機B發送報文,會查詢本地的ARP緩存表,找到B的IP地址對應的MAC地址後就會進行數據傳輸。如果未找到,則廣播A一個ARP請求報文(攜帶主機A的IP地址Ia——物理地址Pa),請求IP地址為Ib的主機B回答物理地址Pb。網上所有主機包括B都收到ARP請求,但只有主機B識別自己的IP地址,於是向A主機發回一個ARP響應報文。其中就包含有B的MAC地址,A接收到B的應答後,就會更新本地的ARP緩存。接著使用這個MAC地址發送數據(由網卡附加MAC地址)。因此,本地高速緩存的這個ARP表是本地網絡流通的基礎,而且這個緩存是動態的。ARP表:為了回憶通信的速度,最近常用的MAC地址與IP的轉換不用依靠交換機來進行,而是在本機上建立一個用來記錄常用主機IP -MAC映射表,即ARP表。
   
  七、如何修改自己的MAC地址

  MAC地址是固化在網卡中的,MAC地址具有唯一性,難道沒有辦法更改了麼?不是的,我們完全不用修改EPROM的內容,而只通過修改存儲單元的內容就能達到修改MAC地址的目的。例如在Windows中可以通過註冊表來修改。

  在「開始」菜單的「運行」中輸入regedit.exe,打開註冊表編輯器,展開註冊表到:HKEY_LOCAL_MACHINESystem CurrentControlSetControlClass{4D36E972-E325-11CE-BFC1-08002BE10318}子鍵,在子鍵下的0000,0001,0002等分支中查找DriverDesc(如果你有一塊以上的網卡,就有0001,0002……在這裡保存了有關你的網卡的信息,其中的DriverDesc的內容就是你的網卡的信息描述,比如我的網卡就是Intel 21041 based Ethernet Controller),在這裡假設你的網卡在0000子鍵。

  在0000子鍵下添加一個字符串,命名為「NetworkAddress」,鍵值為修改後的MAC地址,要求為連續的12個16進制數。然後在「0000」子鍵下的NDIparams中新建一項名為NetworkAddress的子鍵,在該子鍵下添加名為「default」的字符串,鍵值為修改後的MAC地址。

  在 NetworkAddress的子鍵下繼續建立名為「ParamDesc」的字符串,其作用為指定NetworkAddress的描述,其值可為「MAC Address」。這樣以後打開網絡鄰居的「屬性」,雙擊相應的網卡就會發現有一個「高級」設置,其下存在MAC Address的選項,它就是你在註冊表中加入的新項NetworkAddress,以後只要在此修改MAC地址就可以了。

  關閉註冊表,重新啟動,你的網卡地址已改。打開網絡鄰居的屬性,雙擊相應網卡項會發現有一個MAC Address的高級設置項,用於直接修改MAC地址。

  當然,你還可以用工具軟件來修改網卡的MAC地址,如MAC2001這款軟件就可以達到我們的目的。

八、如謂餼鯩AC地址帶來的安全問題

  我們可以將IP地址和MAC地址捆綁起來來解決這個問題。進入「MS-DOS方式」或「命令提示符」,在命令提示符下輸入命令:ARP -s 10.88.56.72 00-10-5C-AD-72-E3,即可把MAC地址和IP地址捆綁在一起。這樣,就不會出現IP地址被盜用而不能正常使用網絡的情況,可以有效保證小區網絡的安全和用戶的應用。

  注意:ARP命令僅對局域網的上網代理服務器有用,而且是針對靜態IP地址,如果採用Modem撥號上網或是動態IP地址就不起作用。

  不過,只是簡單地綁定IP和MAC地址是不能完全的解決IP盜用問題的。作為一個網絡供應商,他們有責任為用戶解決好這些問題之的後,才交給用戶使用,而不是把安全問題交給用戶來解決。不應該讓用戶來承擔一些不必要盜用的損失。

  作為網絡供應商,最常用也是最有效的解決方法就是在IP、MAC綁定的基礎上,再把端口綁定進去,即IP-MAC-PORT三者綁定在一起,端口(PORT)指的是交換機的端口。這就需要在布線時候做好端口定時管理工作。在布線時應該把用戶牆上的接線盒和交換機的端口一一對應,並做好登記工作,然後把用戶交上來的MAC地址填入對應的交換機端口,進而再和IP一起綁定,達到IP-MAC-PORT的三者綁定。這樣一來,即使盜用者擁有這個IP對應的MAC地址,但是它不可能同樣擁有牆上的端口,因此,從物理通道上隔離了盜用者。

  我想通過上面的介紹大家對MAC地址也有些瞭解吧!提醒大家 應該學以致用,千萬不要用來整別人啊!



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=371828

在 console mode 中使用 C/C++ 編譯器

侯捷 1999.04.08


我總是鼓勵 C/C++ 的學習者,在剛接觸這個程式語言的時候,先以 console mode(DOS-like)程式為目標。換言之,不要一開始就想寫 GUI 程式、想開視窗、想有眩目亮麗的畫面 -- 那只是未走先飛,揠苗助長罷了。

所謂 console 程式,就是文字模式的程式,我們可以在其中好好把 C/C++ 的語言根基練好,而不會分心於其他暫無必要的 GUI 枝節上。

我一直以為,這是理所當然的事情,卻也一直發現,有不少大專院校的大一 C/C++ 課程,同學們必須寫個小作家、小畫家、小算盤┅做為期中或期末作業。

果然世界不能大同,各人看法殊異 :)

我不但認為 C/C++ 程式開發對象初期要以 console mode 為主,我也認為,C/C++ 的程式開發環境,初期也要以 console mode 為主。換言之,不要一開始就進入整合環境(IDE)。整合環境中那麼多視窗、那麼多功能、那麼多預設值,會讓程式新手眼花撩亂,無法掌握程式編譯過程中一些有價值的知識與經驗。


等我們對編譯程序有了起碼的瞭解,再來使用整合環境,我認為這才最好。

所以不論在 <深入淺出 MFC> 或 <多型與虛擬> 書籍中,我都會簡述console mode 下的作業方式。<深入淺出 MFC> 在 p.224 列出,<多型與虛擬> 在 p.233 列出。

但仍然偶而會收到網友(不論是否上兩本書的讀者)的詢問,詢問console mode 的編譯方式,或詢問他們所遭遇的問題。

我再次整理這個題目。再有類似問題,我就可以整篇 mail 給發問者了。

★★
注意:以下適合 PC 環境 ★★


●C/C++ 編譯器需要的環境變數設定

古早以來,PC 上的 C 編譯器,就需要兩個環境變數:

LIB
:這個環境變數告訴編譯器說,必要的 libraries 在哪裡(哪個磁碟目錄下)
INCLUDE
:告訴編譯器說,必要的 header files 在哪裡(哪個磁碟目錄下)

另外,為了讓我們能夠在任何 working directory 都叫得到編譯器,當然我們必須設定 PATH。

從古早以來,一直到現在,C/C++ 編譯器都需要這三個環境變數。


●以 Visual C++ 為例

以 Visual C++ 為例,如果安裝後的檔案佈局如下:

C:MSDEVVC98BIN :
這裡放有編譯器 CL.EXE
C:MSDEVVC98INCLUDE :
這裡放有
C/C++ header files
C:MSDEVVC98LIB :
這裡放有
C/C++ standard libraries

那麼你可以寫一個批次檔如下:


set PATH=C:MSDEVVC98BIN;C:MSDEVCOMMONMSDEV98BIN
set INCLUDE=C:MSDEVVC98INCLUDE
set LIB=C:MSDEVVC98LIB


之所以需要另外設定 PATH=C:MSDEVCOMMONMSDEV98BIN,是因為編譯器 CL.EXE 執行時需要 MSPDB60.DLL,而它被安裝於 C:MSDEVCOMMONMSDEV98BIN 之中。

如果你寫的程式不只是單純的 C/C++ 程式,還用到了 MFC,一樣可以在 console mode 下編譯,這時候你的環境變數應該如此設定:

set PATH=C:MSDEVVC98BIN;C:MSDEVCOMMONMSDEV98BIN
set INCLUDE=C:MSDEVVC98INCLUDE;C:MSDEVVC98MFCINCLUDE
set LIB=C:MSDEVVC98LIB;C:MSDEVVC98MFCLIB


多指定了 MFCINCLUDE 和 MFCLIB,就可以讓編譯器和聯結器找到 MFC 的 header files 和 libraries。如果你還需要用到 ATL,就得在 INCLUDE 環境變數中再加上 C:MSDEVVC98ATLINCLUDE。


●以 Borland C++Builder 為例

以 Borland C++Builder 為例,如果安裝後的檔案佈局如下:

C:BORLANDCBuilder3BIN :
這裡放有編譯器 BCC32.EXE
C:BORLANDCBuilder3INCLUDE :
這裡放有
C/C++ header files
C:BORLANDCBuilder3LIB :
這裡放有
C/C++ standard libraries

那麼你可以寫一個批次檔如下:


set PATH=C:BORLANDCBuilder3BIN
set INCLUDE=C:BORLANDCBuilder3INCLUDE
set LIB=C:BORLANDCBuilder3LIB



●如何在 console 中編譯 C/C++ 程式

首先,開啟一個 DOS Box(DOS Prompt, DOS VM),然後在該 DOS box 中執行上述寫好的批次檔,完成環境變數的設定。你可以再在 DOS 提示號下鍵入 set 命令,看看環境變數的設定內容正確與否。

然後就可以直接在 DOS 提示號下鍵入編譯器名稱,開始編譯了。如果你使用 Visual C++,就這麼做:

C:> CL test.cpp <Enter>

如果你使用 C++Builder,就這麼做:

C:> BCC32 test.cpp <Enter>

至於特殊情況下需要什麼特殊的 options,就必須自己查一下啦。只要執行 CL /? 或 BCC32(其後不加任何引數),便可看到所有的 compile options。


●編譯器與聯結器的關係

早期的編譯過程與聯結過程是分開的。換句話說我們必須做兩個動作:

C:> Cl test.cpp
C:> LINK test.obj xxx
(xxx 代表各個必要的 libraries)

或是:

C:> BCC32 test.cpp
C:> TLINK32 test.obj xxx
(xxx 代表各個必要的 libraries)


如今的編譯過程與聯結過程當然還是分開的,但是我們的動作只需一個:

C:> CL test.cpp

或是:

C:> BCC32 test.cpp

這是因為編譯器變聰明了,除非你指定 /c option(表示只編譯不聯結),否則它便自動為你呼叫聯結器進行聯結動作。過去以來頗令 programmer煩惱的「該使用哪些 libraries」的問題,編譯器也有了聰明的解決方案:它將程式中用到的 library functions 記錄起來,同時也錄下它們所屬的library 名稱,於是聯結器就可以從這個表格中知道要聯結哪些 libraries 了。


●環境變數與 DOS VM(Virtual Machine)的關係

你可以同時開起多個 DOS Box,但是你不能夠在某個 DOS Box 中執行上述批次檔而在另一個 DOS VM 中享受其環境設定。

這是因為每個 DOS Box 都是一個 Virtual Machine,彼此誰也看不到誰,互不相干。

除非你在 autoexec.bat 中就設定好上述那些環境變數。這麼一來,任何一個新開啟的 DOS VM 便會因為繼承最原始的 DOS VM 環境,而繼承了那些變數設定。


●環境空間(environment space)不足

最易造成大家困擾的,就是環境空間(environment space)不足的問題。

當你安裝好 Visual C++,會在其 BIN 子目錄中發現一個名為 VCVARS32.BAT 的檔案。這個檔案其實就是做上述的環境變數設定動作(這在 Visual C++ 安裝過程的最後一個步驟有說明。哎,有多少人安裝軟體不看說明!)。所以,你可以在任何 DOS Box 中執行此檔,取代前述我們自己的批次檔。

但是通常大家都有失敗的經驗,得到 "Out of environment space" 的錯誤訊息。這是因為 VCVARS32.BAT 使用以下句法:

set INCLUDE=%MSVCDir%ATLINCLUDE;%MSVCDir%INCLUDE;%MSVCDir%MFCINCLUDE;%INCLUDE%
set LIB=%MSVCDir%LIB;%MSVCDir%MFCLIB;%LIB%


意思是把 INCLUDE 的原始設定(%INCLUDE%)再附加其他設定,並把LIB 的原始設定(%LIB%)再附加其他設定。如果原始設定已經很長,多來這麼幾次,便 "Out of environment space" 啦!

做法之一是調高環境空間的大小。請在 c:config.sys 檔中加上這行:

shell=C:COMMAND.COM C: /E:1024 /P

其中 /E:1024 便是表示將環境空間調為 1024 bytes。(不夠?再調)

做法之二是不要使用 VCVARS32.BAT 的那種「附加」句型,改用前述我們自己的批次檔。要知道,我們可能有好幾個編譯器環境(VC、BCB、G++ ┅),需要輪番測試我們的程式;如果使用「附加」句型,多來幾次,再大的環境空間也會消磨殆盡。

方法一和方法二要雙管齊下唷。


●有任何規模上的限制嗎?

使用 console 模式(或稱 command line 模式)來編譯聯結程式,程式的大小可否有任何規模上的限制?答案是沒有!

它的缺點是沒有工具幫你管理檔案、沒有預設值讓你少打幾個字、沒有分析工具幫你整理 objects,讓你瀏覽 objects、symbols┅。所以一旦你基本功學會了,要開始中大型程式的設計,當然以整合環境(IDE)為佳。


●不要誤會

我這不是開倒車,要大家回到茹毛飲血的時代,都回頭去做山頂洞人。而是我覺得,對於一位 C/C++ 初學者,整合環境(IDE)的運用恐怕帶來一頭霧水,不如先在 console mode 下作業。一方面多認識一些環境設定方面的常識,滿好的,一方面比較方便好用,也不必寫個 1000 行的小小練習還得啟動 五五加農炮,一方面求知的力量可以全部放在語言的練習上頭。

等有了一定的程度,再使用整合環境,就不會如墜五里霧了。

-- the end



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=371697


名稱 類型 價格 出處
封印的不死鳥戒指 飾品‧戒指 解封印費用:427763古幣 墓穴鐵匠
封印的不死鳥耳環 飾品‧耳環 解封印費用:641644古幣 墓穴鐵匠
封印的不死鳥項鍊 飾品‧項鍊 解封印費用:855525古幣 墓穴鐵匠
封印的聖威戒指 飾品‧戒指 解封印費用:426834古幣 墓穴鐵匠
封印的聖威耳環 飾品‧耳環 解封印費用:640251古幣 墓穴鐵匠
封印的聖威項鍊 飾品‧項鍊 解封印費用:853669古幣 墓穴鐵匠
名稱 類型 價格 出處
封印的塔魯外衣 防具‧法袍(上) 解封印費用:260250古幣 墓穴鐵匠
封印的塔魯帽 防具‧頭盔 解封印費用:87000古幣 墓穴鐵匠
封印的塔魯手套 防具‧手套 解封印費用:87000古幣
再封印費用:4350古幣
墓穴鐵匠
封印的塔魯皮甲 防具‧輕裝(全) 解封印費用:381000古幣 墓穴鐵匠
封印的塔魯金屬盔甲 防具‧重裝(全) 解封印費用:507750古幣 墓穴鐵匠
封印的塔魯長襪 防具‧法袍(下) 解封印費用:162750古幣 墓穴鐵匠
封印的塔魯靴 防具‧鞋子 解封印費用:87000古幣
再封印費用:4350古幣
墓穴鐵匠
封印的夢魘手套 防具‧手套 解封印費用:132000古幣
再封印費用:6600古幣
墓穴鐵匠
封印的夢魘皮甲 防具‧輕裝(全) 解封印費用:579750古幣 墓穴鐵匠
封印的夢魘盔甲 防具‧重裝(全) 解封印費用:772500古幣 墓穴鐵匠
封印的夢魘盾 防具‧盾牌 解封印費用:138750古幣 墓穴鐵匠
封印的夢魘長袍 防具‧法袍(全) 解封印費用:579750古幣 墓穴鐵匠
封印的夢魘靴 防具‧鞋子 解封印費用:132000古幣
再封印費用:6600古幣
墓穴鐵匠
封印的夢魘頭盔 防具‧頭盔 解封印費用:198000古幣 墓穴鐵匠
封印的聖威手套 防具‧手套 解封印費用:132000古幣
再封印費用:6600古幣
墓穴鐵匠
封印的聖威皮甲 防具‧輕裝(全) 解封印費用:579750古幣 墓穴鐵匠
封印的聖威金屬盔甲 防具‧重裝(全) 解封印費用:772500古幣 墓穴鐵匠
封印的聖威長袍 防具‧法袍(全) 解封印費用:579750古幣 墓穴鐵匠
封印的聖威靴 防具‧鞋子 解封印費用:132000古幣
再封印費用:6600古幣
墓穴鐵匠
封印的聖威頭箍 防具‧頭盔 解封印費用:198000古幣 墓穴鐵匠
封印的阿貝拉外衣 防具‧血盟防具 解封印費用:381000古幣 墓穴鐵匠
封印的阿貝拉涼鞋 防具‧血盟防具 解封印費用:87000古幣 墓穴鐵匠
封印的阿貝拉皮手套 防具‧血盟防具 解封印費用:87000古幣 墓穴鐵匠
封印的阿貝拉盔甲 防具‧血盟防具 解封印費用:507750古幣 墓穴鐵匠
封印的阿貝拉禮服 防具‧血盟防具 解封印費用:381000古幣 墓穴鐵匠
封印的阿貝拉禮鞋 防具‧血盟防具 解封印費用:87000古幣 墓穴鐵匠
封印的阿貝拉絲手套 防具‧血盟防具 解封印費用:87000古幣 墓穴鐵匠
封印的阿貝拉護手 防具‧血盟防具 解封印費用:87000古幣 墓穴鐵匠
封印的阿貝拉軍靴 防具‧血盟防具 解封印費用:87000古幣 墓穴鐵匠
封印的阿貝拉頭盔 防具‧血盟防具 解封印費用:130500古幣 墓穴鐵匠
封印的阿貝拉頭盔 防具‧血盟防具 解封印費用:130500古幣 墓穴鐵匠
封印的阿貝拉頭盔 防具‧血盟防具 解封印費用:130500古幣 墓穴鐵匠
封印的黑暗水晶手套 防具‧手套 解封印費用:87000古幣
再封印費用:4350古幣
墓穴鐵匠
封印的黑暗水晶皮甲 防具‧輕裝(上) 解封印費用:260250古幣 墓穴鐵匠
封印的黑暗水晶皮脛甲 防具‧輕裝(下) 解封印費用:162750古幣 墓穴鐵匠
封印的黑暗水晶盾 防具‧盾牌 解封印費用:91500古幣 墓穴鐵匠
封印的黑暗水晶胸甲 防具‧重裝(上) 解封印費用:347250古幣 墓穴鐵匠
封印的黑暗水晶脛甲 防具‧重裝(下) 解封印費用:216750古幣 墓穴鐵匠
封印的黑暗水晶長袍 防具‧法袍(全) 解封印費用:381000古幣 墓穴鐵匠
封印的黑暗水晶靴 防具‧鞋子 解封印費用:87000古幣
再封印費用:4350古幣
墓穴鐵匠
封印的黑暗水晶頭盔 防具‧頭盔 解封印費用:130500古幣 墓穴鐵匠
名稱 類型 價格 出處
封印的泰狄奧森戒指 飾品‧戒指 解封印費用:487627古幣 墓穴鐵匠
封印的泰狄奧森耳環 飾品‧耳環 解封印費用:731441古幣 墓穴鐵匠
封印的泰狄奧森項鍊 飾品‧項鍊 解封印費用:975255古幣 墓穴鐵匠
名稱 類型 價格 出處
封印的大祕儀手套 防具‧手套 解封印費用:268500古幣 墓穴鐵匠
封印的大祕儀長袍 防具‧法袍(全) 解封印費用:1305000古幣 墓穴鐵匠
封印的大祕儀長靴 防具‧鞋子 解封印費用:268500古幣 墓穴鐵匠
封印的大祕儀頭箍 防具‧頭盔 解封印費用:402750古幣 墓穴鐵匠
封印的帝國聖軍盾 防具‧盾牌 解封印費用:282000古幣 墓穴鐵匠
封印的帝國聖軍胸甲 防具‧重裝(上) 解封印費用:1072500古幣 墓穴鐵匠
封印的帝國聖軍脛甲 防具‧重裝(下) 解封印費用:672000古幣 墓穴鐵匠
封印的帝國聖軍長手套 防具‧手套 解封印費用:268500古幣 墓穴鐵匠
封印的帝國聖軍長靴 防具‧鞋子 解封印費用:268500古幣 墓穴鐵匠
封印的帝國聖軍頭盔 防具‧頭盔 解封印費用:402750古幣 墓穴鐵匠
封印的紅龍皮手套 防具‧手套 解封印費用:268500古幣 墓穴鐵匠
封印的紅龍皮甲 防具‧輕裝(全) 解封印費用:1305000古幣 墓穴鐵匠
封印的紅龍皮盔 防具‧頭盔 解封印費用:402750古幣 墓穴鐵匠
封印的紅龍皮靴 防具‧鞋子 解封印費用:268500古幣 墓穴鐵匠

 
PUMA螢光夜跑