今天很高興有這個機會跟各位介紹呢有關cisco一些網路比較新的一些趨勢跟解決方案。我本人呢目前負則這個亞太區的一些ip核心跟邊緣的解決方案。因為呢網路這個各位知道這個領域非常廣,那我本身負責ip codematch還有ipv6裡面的一些領域。我工作的區域呢就是以中國大陸還有台灣為主,好那今天跟各位演講的題目是如何加強ip網路的迅速維護跟他的安全性,希望對各位有些幫助。那今天的agenda呢就分為三個部分,第一個部分呢,跟各位介紹,怎樣做到呢一個痊癒的,所謂的快速恢復的ip,那第二部分呢就是有關metro ethernetsecurity,就是在中國大陸他們叫做乙太痊癒網的安全性,那第三部分呢就是反dos攻擊的一些解決方案。那我會有一些時間讓各位做一些Q&A。好那我們首先看一下這個第一部分,有關這個GRip的部分,那GRipglobal resilient ip,就是呢怎麼讓整個ip網路在某個點故障的時候可以迅速的回覆,好各位來看這個圖,這個圖從左到右來看一下,那最左邊呢是一個企業的骨幹,往右呢就是一個企業的邊緣,接下來是這個enterprise的第一點,那最右邊的算是骨幹,這四部分,那這四部分有可能出現故障的情況,不管是電路故障還是其他的都有可能發生,那要怎麼加強這一方面的故障維護能力呢,特別呢在不同的地方設計了不同的解決方案,假如我們在企業骨幹內部的時候,那我們有一個新的路徑呢叫做multicast sub-second convergence,顧名思義呢就是讓這個multicast在充電的時候呢能夠在極短的時間內完成,不像以前大概經過幾秒鐘,我們只要1秒多久可以把它做完充電。那在這個企業premise部分呢,我們有個新的模組叫做GLPPgateway load balancing protocol,另外還有stateful NAT還有ipsec,那麼在service provider得邊緣呢,我們有所謂的ciscoswitch over 的技術還有nonstop forwarding的技術,簡稱為NSSSSO。那麼在所謂的service provider的骨幹呢,我們有新的solution就是node protection。但是這個骨幹必須要MPLS enabled。那剛剛講的第一張呢就是有不同的solution對不對,那有些solution是適合用在每地方的像下面這塊,下面這塊是適合用在每地方的,包括呢ip event dampeningbgp convergence optimization和所謂的incremental SPF optimization就這幾個。那因為時間的關係呢,我不會把每部分跟各位介紹一遍,那我book的幾個地方,那第一個就是這個,第二就是state,第三是下面這塊,那因為呢這兩塊一個是跟產品比較有關係所以我不講,那最後一塊呢是以MPLS為主,那各位對MPLS部分也不是很清楚,直接講這塊呢可能對同學們來說比較困難,所以呢我只講這幾塊。首先呢我們先看multicast sub-secondconvergenceconvergence是收斂的意思,甚麼叫收斂呢,就是網路裡面某個地方發生問題,像是線路斷掉了,或是路由器死掉了,那麼我們怎麼能夠在短時間內恢復穩定的狀態,就是恢復到正確的狀態這樣子,我們叫做convergence。那麼針對multicast的環境呢我們做了幾點的加強,第一個就是join/pruneaggregation,在一個multicast環境呢,那麼一般來講呢,基於在作multicast的時候呢我們會用

另外我們看一下IPSecIPSec是目前public的一種BPA的解決方案,這種記憶這種IPSec來做BPA,因為中間是internet嘛,所以用IPSec很安全。那讓我們看一下這個圖,這個圖也是一樣,就是呢,這兩路由器,那麼他們有跟外面的做IPSec的聯接,remote office,他用IPSec接到這邊來,那我們知道你在定義整個IPSec tunnel的時候一定要定義說你跟哪IP地址做tunnel,那麼以HSRP的解決方案來看呢,對這個路由器來講呢,他的destination是這兩路由器的virtual IP,不是任何一台的,不是這個IP也不是這個IP,是剛才他們兩個定義出來的virtual IP,那好處什麼呢,好處就是說無路某個virtual IP做連線,萬一,主要由這個路由器作負責,如果這個是active,這個是standby,如果active死掉以後呢,我standby可以馬上出來接手,好處是這個樣子嘛,對不對,不用重新去connect,但是有一個缺點,你用了這個解決方案雖然它會過來接手,但是IPSec這個會斷掉,要重新驗,為什麼,因為在IPSec建好以後這個路由器的例子裡面呢,有非常多有關IPSecpronominal,他有記下來,IP的東西很多很多的,他都有記下來,但是這個路由器沒有阿,這個路由器沒有這個pronominal,所以如果斷掉了由他來接手的話IP這個tunnel要重建,因為對他從前的pronominal一無所知,這樣會讓服務中斷對不對,我們的目的是讓服務不要中斷,所以怎麼做呢,就是用所謂的Stateful IPSec,換句話說這兩路由器除了管HSRP之外還有另外一個protocol叫做state,就是他會把它有關IPSec information透過這個protocol跟他講,對他內部有關IPSec的狀態非常清楚,所以萬一這台路由器有問題了,他來接手的時候,IPSec也不會中斷,繼續能服務,這就是我們的目的,這概念前面剛剛有講到,你這兩個路由器跑HSRP,你要把你所知透過某種機制告訴另一個路由器。IPSec也是目前滿重要的一塊。所以現在我們來講的就是剛剛講的用stateful NATstateful IPSec,讓兩個路由器中間透過某種機制來交換有關IP information,然後讓他服務不要中斷。好,我們看一下,看左邊這個圖,如果沒有Stateful IPSec,一旦路由器接手之後呢,你看紅色那一塊,tunnelre-establish,重建要花多少時間,160秒,如果是500tunnel的話。如果看右邊這個圖,如果啟動了Stateful IPSec,你接手了以後就直接連線,不用任何重建的tunnel,我們的目的就是讓重建的時間越短越好,盡量不要中斷。另一個新加進去的功能就是IP Event Dampening,各位可能常聽說在BGP裡面,BGP有所謂的route-dampening,什麼叫BGP route-dampening?就是說幾乎現在每一個service在啟動BGP的時候都會啟動BPG route-dampening,比較大的serviceHinetSeednet都會啟動,我們知道BGP是目前連接internet主要的protocol,不同的service偷過BPG連接在一起,所以HinetSeednet之間做路由交換要透過BGP,所以BGP是非常重要的protocol,雖然他已經提出來將近十年的時間,BGP1995年出來的,已經很久了,但是他是非常重要的protocol。那什麼叫BGP remote-dampening呢,就是說今天如果有一個路由不穩定,時有時無,比方說你跟你客戶跑BGP,他會用到的網路會出現什麼問題,一會有一會而沒有,他跟你講有當然很好對不對,如果他跟你講這邊路由不見了,你也要跟別人講,舉個例子,一般BGP是用在兩個AS做連接,就是兩個service做連接,那麼有些BGP也會跑在service跟企業之間,如果這個企業夠大,如果這個企業出口不只一個,他可能會跟serviceBGP,舉個例子像國內像建華銀行他就跑BGP,像遊戲橘子也跑BGP,因為他出口不只一個,出口不只一個的情況下,因為你跟不同serviceBGP。如果你發現你的客戶不路由,現在沒有了,你就趕忙跟別人講,所以說你一個路由不見了會影像到全世界,就是說整個路由會不混定,假如你不見講一次也就罷了對不對,最不穩定的就叫做dampening,就是會有flap,如果有flap你就會想辦法做dampeningflapping最可怕,如果flapping是時有時無,一會有一會沒有,你現在跟我講有,我吸收下來然後跟別人講,或者說你跟我講你路由不見了,我就跟別人講不見了,一下子你就說有了,我就跟別人講有了,過了一會又說不見了,這樣的話會像漣漪一樣的擴散到全世界,所以一般service會阻擋這種事情發生,所以他會啟動route-dampening,就是說今天如果有一個路由不穩定的話,他經過幾次不穩定以後,經過幾次的block,我就認定你這個是有問題的,我就不幫你做update,你說你好我也不理你了,表示你有問題,這叫做route-dampening,就是針對不穩定的路由做特別的處理,那什麼叫IP Event Dampening,這個概念從BGP dampening來的,以往的IGP並沒有所謂的dampening做攻擊,BGP才有,IGP沒有,IGPprotocol基本上沒有什麼dampening做攻擊,這是去年提出來的IP Event Dampening,什麼意思呢,針對link來看,如果link穩定的話呢,沒事,如果不穩定的話呢,我這邊啟動IP Event Dampening,讓他不要影響太大,舉個例子我們看一下,上面這個圖是真正interfacestate,上面就是UP,下面就是DOWN,好我們看一下喔,看這邊,針對這叫做penalty,針對某個link他的狀態會設定一個penalty,你看喔現在由UPDOWN了對不對,我的RT升上來了,因為你現在RT還沒超過suppress threshold,所以我就跟別的路由器講說我這邊有一個路由斷掉了,我會跟別人講,我會做update,好,那到了這邊會起來了對不對,那如果沒有起來我還是會跟其他路由器說你起來了,你又好了,update,可是呢你又DOWN了,不穩定又DOWN了,又DOWN了以後呢我RT飆上去,然後隨著時間的流逝慢慢降低,如果你又DOWN一次,我RT往上加,那我這時候會超過suppress threshold,我就壓抑你,表示你這個電路有問題我就不理你了,所以大家看到沒有,會不會一直不穩定,你不斷往上累積對不對,下面比較重要,下面沒有再做任何routing update,在這段時間沒有做任何routing update,雖然這邊有起來過,但是他不講了,因為他認為你有不穩定,不講了,等到你降降降到reuse threshold,我就會update,就是這樣,這就是所謂IP Event Dampening,就是針對比較不穩定的link做特別的處理,好,我們看這個也是一樣,這是繼續前面這個裡面來的,各位看一下,用什麼地方呢,用這個地方,比方說一個remote office他用一個routing這叫做遠端,好,如果這個primary呢不夠穩定,一個UP一個DOWN,一個UP一個DOWN,只有前面幾次UPDOWN會有,其他就不會有了,因為我已經切掉update link來了,所以換句話說,好處就是說雖然這段時間primary linkUP過好幾次,可是我不理你,等到你夠穩定再說,這就是IP Event Dampening

BGP目前來講是扮演非常重要得角色,那不同間交換路之後,所以他的交換路由很多,目前在Hinet內部來講的話呢,一個BGP路由器大概有13萬筆路由左右,當然跟不同地點有關,平均來講全世界大概13萬筆路由左右,如果是因為BGP link斷掉了,你要透過BGP重新選取某個路由,選取13萬筆要花一段時間的,針對這部份我們一個比較好的解決方案,讓BGP可以收斂的快一點,重新選取的時候可以很快達到一個穩定狀態,大概快40%,最重要得方法就是這個:BGP Update Packing,就是說我可以讓以前一個packing可能存在的地方可能不到十筆的BGP的路由update,現在可以存在多一點,用最大可容忍的packing存在所有BGP update,讓一個packing可以多裝一點BGP update,這樣可以在很短的時間內可以update完成。「Link State SPF Computation」,各位知道在IPV裡面最有名的兩個:SPFISA,國內用ISA的比較少,國內我們目前沒有看到有那個地方在用ISA,像HiNetSeNetPaNet都是“Full” SPF,但是國外很多都用ISA,不管是ISA或者是“Full” SPF都是很重要的,他們都是link state router,所以他們都要建立所謂SPFtree,因為他跑的是short path algorithm,針對link state SPF的計算我們去年也提出新的解決方案,盡量讓SPF的計算時間能夠縮短,我們看這個圖,這是一個網路圖,link上面的數字都是cost,假設我是以C的眼光來看,如果C在跑SPF algorithm,他會建立一個SPFtree,因為你有SPF tree之後你就可以知道說到每個不同地方馬上可以把路由表整理出來,如果今天ADlinkcost改變,由2改成5,當然會牽動到一些改變,改成這個樣子,但是各位注意由2改成5以後牽動到B下面的樣子,B下面的sub-tree樣子改變了,但是對於SG都沒有影響,但是對於以往的SPF來講的話,不管是那個地方改變,他的整個網路都要重新計算一次,如果網路很大要花一段時間,那現在我們那個比較好的方法就是說我看你斷在哪裡,看你改變在哪裡,我只要作局部的計算,不用作整個網路的計算,因為針對這個圖的話我只要針對B下面的sub-tree作計算就好了,我不用整網作計算,這樣就減少很多時間,其他部分各位自己看一下。這是我跟各位報告的第一個部分,有關所謂的比較新的一些有關針對IP網路做迅速回復的部分。

(41:15)

那跟各位講第二部分就是有關Metro Ethernet Security,這是目前非常熱門的話題,現在目前很多國家都開始部署Metro Ethernet,中國大陸如火如荼的展開,他的部署時間比台灣來的快,最近台灣中華電信剛剛發標一個案子做Metro Ethernet,中國大陸大概已經做一兩年了,就是整個城市是大的乙太網路。那麼在部署這個Metro Ethernet的時候security是很多人沒有注意到的,我們這個單元就針對這個部分為大家做介紹。我們說在一個Metro Ethernet裡面一定會分切很多VLAN,那麼CISCO研究說今天要管理這麼大一個Metro Ethernet裡面一大堆VLAN,你的工作站是一個manager,你去管VLAN不要跟一般用戶的VLAN在一起,要走特別的VLAN叫做Management VLAN,特別切一個VLAN來傳送網管方面的訊息,這是安全性的考量,不要跟用戶的VLAN走在一起。對於有關遠端接觸部分,我們知道網路設備這麼多對不對,你來你要從很遠的地方來做telnet,第一個部分就是說你要針對每一個設備你都要設定他能夠loginpassword,不能讓他直接login就進來了,一定要切記要做loginpassword的配置,如果你對telnet不放心,你可以用SSHSSH來講的話呢,他的password是加密過的,所以你不用擔心有人會看到你的password,第三呢就是你針對有人來telnet你,有人來SSH的話呢,你可以做ACLAccess Control List)控制,就是說我設定一些打斷一些ACL,只允許某些工作站可以telnet我這台sever,那麼有人來telnet以後呢,你可以經過AA的方式來做認證,這些都是一些基本的工作要做。SNMP是目前最通用的網管的通訊協定,他目前最新是三版。有關SNMP有哪些security要做考慮的呢,第一個,SNMP他有default of community叫做publicpublicread only,那priority這個communityread lock,因為這兩community大家都知道,你一定要檔掉,不然用戶很容易用他的網管系統看你設定的information,如果他用public,你也用public這樣就看的到了,所以你就逮掉你設備上面的SNMPcollision(45:52)值,他像密碼一樣,你要跟我一樣才行,不跟我一樣不行,當然你這個SNMP也可以設定一些ACL,不是每一個人都可以用他的工作站來詢問我有關網管的事情,或是允許某些工作站來查詢網管的事情,這非常合理對不對,因為一個網路裡面也不會有幾台網管的工作站。什麼叫SNMPViewPrivilege呢,我們知道SNMPXX(46:35) information是針對MIT來做,基本上是一個tree,如果今天你想看某個object,你就送進一個字串,如果我是網管工作站對不對,你是路由器,我從SNMP來控看你某一個object的內容,那我就丟一個字串給你,這個字串就鎖定某一個object,用identify object,用個字串比如說1.3.6.1.1.1.0類似這種字串來鎖定某個object(47:15)。那SNMP View什麼意思呢?就某個網管工作站只能看我這個tree裡面某個sub-tree的內容,其他sub-tree你看不到,這個叫View。那SNMP v3是最安全的一種網管,因為他所有交換的訊息可以加密。有關Control Plane Attacks哪幾種呢?一個hack如果想攻擊網路設備不想攻擊server,他有哪幾種攻擊方式?他可以透過routing來做攻擊,或是用ICMP來做攻擊,不斷的ping,然後也可以用SNMPTelnet來做攻擊,不管用哪幾種攻擊方式,基本上,你只要針對不同可能進來的一些protocolACL,只允許某些工作站或某些sever來跟我溝通,其他我一概拒絕,所以default情況下應該是“Deny All”。那什麼叫Routing Protocol Securityrouterrouter之間在做路由交換的時候也要做認證,當然也可以不做認證,不過如果比較care安全性的問題的話你可以做認證。那我們看一下在目前Metro Ethernet裡面有哪幾種比較常見的攻擊方式,我們分別介紹不同的攻擊方式怎麼去避免,第一種最常見的是「MAC address flooding」,在網路上有一個tool,你到google一查就可以找到,可以download叫“macof”,這個tool下載以後安裝在你的work link上面,他可以幫你編造出一堆不同的MAC,那麼有什麼問題呢?如果寫一個應用程式攻擊,他很容易癱瘓你的switch,乙太網路裡面最重要的是平行switch,我們知道對一個switch來講,如果他收到一個ethernet frame,他會看他的net address,如果是他知道的他就會往他知道的那個port出去,如果從右邊這個port我收到一個frame,我知道你的目的地是左邊這個port,我就會往左邊這個port送出去,其他port都不會丟,ethernet switch就是這樣做的。如果一個ethernet switch收到的frame不知道怎麼走到目的地,他沒有這張表,他不知道要怎麼走到目的地,他會怎麼做呢?Broadcast。如果從1port收到這個frame,那其他7port都會丟出去,如果用戶丟出來的是一個broadcast他也是一概broadcast,每port都丟出去,如果一個ethernet switch所有的multicast怎麼做呢?也是broadcast,所以switch收到一個frame很多情況下會用broadcast方式來處理,但是畢竟broadcast算少數,如果今天你想要癱瘓一個switch很簡單,你就用macof這種工具,我可以在短時間內產生上萬筆不同的destination MAC,然後短時間產生上萬筆不同的MAC來做攻擊,我們知道switch除了做promoting之外還有一個很重要得工作要做就是learning,我如果有一個收到一個frame,我要看你的source是誰,然後把你的source記下來,如果我在短時間之內產生一萬source,針對這個port有一萬source,你馬上把他的表都填滿了,如果今天一個switch表都被填滿以後,如果他收到frame進來,他就像一個hub一樣,因為他不知道該怎麼送,就broadcast。那麼CISCO怎麼解決這個問題呢?CISOC從最低端的到最高端的switch都有提供一個功能叫hxxx(54:38) switch,這什麼意思呢?就是我針對用戶跟我聯的這個port去設定,要怎麼設定呢?我指認幾個MAC,我設定3MAC,如果第四進來我就不理你了,如果你認為用戶只會有1MAC你就設定1就好了,所以如果產生不同的MAC他也不會影響到你,這個叫做port security,這個可以自己設,可以動態設定也可以靜態設定。另外我們看一下DoS裡面的「Spanning Tree Attacks」,這個attack在國外也實際發生過,(55:05)一般的service …,像中華電信是環狀,像大陸以星狀為主,不管是環狀或是星狀都是一種解決方案,這個圖形是用環狀,那麼環狀會有什麼問題呢?繞這個環狀對不對,ethernet繞這個環狀一定要跑spanning treesxxx一條以後會掉在哪裡呢?會掉在這邊,為什麼呢?(56:38)因為一般sxxx會把這兩台當作root,一台當作主要的root,一台當作backuprootroot最好性能好一點,root做的工作比較多,這兩台應該性能比較好,因為他們是單純的switch,既然這兩root的話,一般都會站在這邊,spanning tree會在這邊,所以正常到左邊他走這邊,到右邊走這樣,正常的話是這樣。那我們看一下,hacker怎麼攻擊呢?國外實際發生的案例,這邊有一個hacker在這邊,那他呢用一台switch跟你連,他不是用什麼hub跟你連,他買一台switch跟你連,那這邊有一台APwireless LANAP,那他的伙伴在這邊,也用個AP,那這兩台AP有串在一起,就像一個bridge一樣,可以互通,那他做什麼事情呢?他怎麼做呢?他把這個switchpriority設成0,誰當root?就要選取嘛,怎麼選?看誰的bridgepriority比較低,這是802.1D的標準,switch比較低的當root,所以他設成0可以當root了,0最低嘛,所以本來他當root的,就變成他當root,用userswitchroot,斷在哪裡呢?斷在這邊了,看他root嘛,斷在這邊,斷在這邊有什麼問題呢?就是說,所有送往右半邊環的txxx(58:44)都會經過這兩個人,所以你都會看到別人的txxx,這是一個安全性的問題。好,那這還不算,如果這只是純粹要看別人的資料也就罷了,那有人不是想看資料,他想要搞垮你的service xxxxxx(59:18),他怎麼做呢?他一會兒當root,一會兒不當root,這邊的priority一直在改變,一會兒他當,一會兒他當,一會兒他當,我們知道spanning tree在跑的時候每port都是呈現block狀態,就是中斷狀態,所以整個網路就呈現半癱瘓狀態,所以這就是麻煩,就是你要避免有一個switchroot

(p.36)

 

Spanning Tree Attack Cisco Solution Root Guard

因為曾經發生過問題,所以CISCOswitch增加一些feature,我們設定一個功能叫「Root Guard」,什麼叫Root Guard呢?Root Guard用了以後,我可以針對這個port,這是xxxx switch(1:00:10)對不對,這是用戶的,我針對他連進來的這個port我設root guard,就是你不能當root,就算你的priority很低我也不理你,你也不能當root,你不當root就不會發生剛才那個問題。

 

Spanning Tree Attack Cisco Solution BPDU Guard

那另一個方法就是「BPDU Guard」,什麼叫BPDUBridge Protocol Data Unit。我們知道802.1D在跑的時候他算的每東西都叫BPDU,好,那xxxx(1:00:45)會不會送BPDU?不會,只有switchbridge會送BPDU,如果今天你是經營Metro Ethernet這個txxxx,你認為用戶應該用PC跟你連,不可能用switch跟你連的話,你乾脆用這個BPDU Guard,所以就是說如果用戶跟我連應該是用PC跟我連對不對,BP不會送BPDU嘛,如果我發覺用戶你怎麼送一個BPDU給我,表示你用switch跟我連,我就把你擋住,直接把你的port關掉,不讓你送,你不應該用switch跟我連才對,所以這就叫做BPDU Guard,避免用戶用switch跟我連。

 

Spoofing Attacks MAC Spoofing

接下來我們看哪種攻擊方式,一個是MAC SpoofingMAC地址的假冒,MAC地址假冒很簡單對不對,你在Window環境很容易設定MAC地址,你設你自己想要的地址,可以阿,你看,00010203,你設你自己想要的,你設定以後呢,你從你網路卡送出去的MAC就是用這個,懂不懂,default你不會去設他,那在什麼情況下會設這個?在IXXX(1:02:13)的環境,可能各位都沒有接觸過,如果你在銀行上班的話,銀行資訊處就會接觸到這個,IXXX的環境就會設定自己的source MAC。那怎麼樣防止MAC被假冒?同樣一招,我鎖定你這個MAC,如果你這個MAC跟我不一樣我就不理你,不讓你送,同樣一招。

 

Spoof Attacks IP Address Spoofing

好,我們看一下,IP地址假冒跟ARP的假冒我們看一下,IP地址假冒,就是用戶拿到IP了對不對,但是他在送的時候不用自己的IP送,他用另外一個IP來送,表示你這個有問題對不對,你的行為可能有點問題,這叫IP地址假冒。IP地址假冒有個方法很好用,目前很多IP都有在用,叫URPF,這是很好用的方法,怎麼用呢?我們看一下,就是說今天呢這個路由器我在internet上面我設定了URPF,如果ethernet收到一個packet,我就檢查你的source,只看你的source,看你的source幹嘛呢?看一下怎麼到你的source,如果我到你的source不是透過ethernet我就把你扔掉,把是你這個地只有問題,因為你從ethernet連進來照理講我要到你那邊也可以從ethernet連出去對不對,如果既然你從ethernet連進來我要到你那邊竟然不是從ethernet出去,表示你一定有問題,你地址一定是假的,有問題,所以把你扔掉,現在很多都用這招,堵絕一些不入流的hacker的攻擊,比方說你在家裡,你拿到的地址可能是public,我用一個10.1.1.1做攻擊,在Hinet那邊就把你扔掉,因為10.1.1.1根本不存在。

 

IP Source Guard

那另外一個可以避免source被假冒的方法是用DHCP來做,在switch上面啟動一個功能叫「IP Source Guard」,怎麼做呢?就是說今天用戶如果連上來如果是DHCP要的地址,然後他要做DHCPrequest,然後這邊sever給他DHCPresponse,那麼一來往都會經過這台switch對不對,那把他記下來,記什麼?記說這個user他拿到的是那個IP,他的MAC是哪一個,我記下來了,IP哪一個,MAC哪一個我把他記下來了,如果待會你丟出一個packet,你的IP跟你的MACmake的話我就把你扔掉,這叫做「IP Source Guard」。

 

Spoof Attacks ARP Spoofing

那麼另外一個攻擊是ARP SpoofingARP的假冒,ARP的假冒也是發生過的案例,你們對ARP不陌生對不對,我們看一下他怎麼做攻擊,我們看一下上面有很簡單一個圖,在這個LAN上面有兩台host AB,然後這台B要送出去當然要透過Default Gateway送出去,這是Normal traffic,一來往都是這樣做,所以呢,在這台就有一個ARP Table,如果你要到192.168.10.1的話,他的MAC是什麼?他的MAC是這個對不對,如果你進入Windows環境,啟動DOS,你打一個ARP a就看到ARP的表,這是正常的情況下。如果hacker在左邊,他假冒他是Default Gateway,他說他是192.168.10.1,我的MAC是這個,他用他自己的,IP用他的,MAC用自己的,這時候ARP送出來後,他也用ARP送出來對不對,ARP送出來以後他就會改,改成怎麼樣?路由器他可能換了一張網路卡還是怎樣,所以他MAC改成他的MAC,懂不懂,IP當然沒有變,MAC改掉了,改成他的MAC,這會有什麼問題呢?如果他要上網的話,他會這樣走,對不對,因為MAC改成他的了嘛,他一定認為他嘛,他透過他送出去嘛,那你沒有感覺,回來也是一樣,回來直接當他來源,那user有沒有感覺?沒有感覺,如果usertelnet遠端的東西的話,他就看到他的,這個叫做ARP Spoofing。怎麼樣杜絕這種事情的發生呢?那麼我們直接看這個圖解比較快一點。這個userDHCP IP List,他總會經過這台switch,那這台switch跟前面一樣,他會把這個user一來往的DHCP的內容偷看一下,然後把他記下來,就是說這個user拿到什麼IP,他的source MAC是什麼他知道,然後把他記下來,如果待會這個user想用剛才那一招,他故意丟出這個ARP說我就是某某某,他會檢查喔,你是不是就是這個人,不是的話不幫你送,然後把你扔掉,你在這台機器打上的指令叫做ARP Inspection,防止你做ARP的攻擊。有一個user開機了對不對,他送出DHCPIP地址,這時候有一個hacker跟他同時在這個LAN上面,然後他回答他,他不是DHCP server,他回答他,他說我就是DHCP server,我告訴你,你的IP是多少,Gateway是什麼,DNS是什麼,都告訴他假的information,不存在的information,那他上的了網嗎?他上不了網,因為IP地址不對,default Gateway不對,DNS不對,都是假冒的,都是他胡說的,這也是一種DoS的攻擊,讓受害者根本上不了網,因為他拿到的都是假的,這很容易做的到的。

他回答他,他說我就是,我告訴你呀,你的ip是多少,你的位置是什麼,你的DNS是什麼,都告訴他,都告訴他什麼,假的information,不存在的information,那這樣他絕對上不了,因為ip位置不對,DNS不對,這都是假冒的,這都是他胡說的,所以呢這也是一種攻擊,這讓受害者根本上不了網,因為他拿到全部都是假的,全都是假的ip,假的information,這是很容易做得到的,如果這兩都達成的話,這是很容易做得到的,在現在,那如果這些問題並沒有發生呢,那叫什麼,就是我看到兩個user在同一ip下面,但是彼此之間並沒有互動,因為很明顯的,我讓你們兩個屬於同一prapda,那在底下我知道是同一prapda,那不同的prapda會有不同,那另外一種方法來阻擋那個說的那種攻擊方式就是這樣,ok,如果第一個送出來,那個要回答問題的話,那個就會被拿掉了,為什麼,因為面對左邊這個人的都是unport,不是那個port,所以在傳送途中,它送出來的那個information,不可能是它出來的那個information,對不對,就這樣它就是untrck,這就是另外一種阻擋的方法        。好那另外一種呢,以前也曾經發生過,就是有些會一直不斷地要地址,不讓別人用,把它要光,不讓別人上網,而且有一個方法就是發射,那這個要怎麼做呢,就是跟switchrequest,不斷地要,那多附帶上的就是發射,那都放什麼東西呢,主要放兩個東西,一個是switch ip,另外一個是reload ipreload ip就是這個switchsource name那另外一個ip的功用就是會告知當有一個request時它是從那一個port進來的,而是屬於那一個的,討論說如果這台dhd server也支援同樣功能的話呢,它可以做配置,它可以做compute,也就是說這台switch的每port它可以做配置,就是對每一個port所收到的request它可以給它一個ip,對不對,因為它那些information都送給它了嘛,它告訴它,我現在是那一個switch,從那一個port,那個dhd server有一個request去要求一個ip,那如果原先你設定的這個port就只能給它一個ip呢,要也要不掉,因為這是不一樣的,所以這樣就不會發生像剛才講的那樣阻擋的現象,就開平方的一個新的dhd的選項,好,那這是那個說有關之前說的一個部分,那現在第三種我們講一下,那第三種是什麼,就是在ip的環境如何阻擋dos的攻擊,這是非常熱門的話題哦最近,像現在歐洲的ip有賣那種的服務,有那種服務,就是你客戶再要求那種服務,萬一我到時候有那種情況,就麻煩你要替我解決,好就這樣,阻擋這樣的攻擊,這是一種服務項目哦,什麼叫default serpe,怎麼發生的,我們先看一下,那就想辦法去找到那入侵的pc,就是容易介入的pc清好以後呢,你拿一些弄好的病毒碼放在裡面,放在裡面,然後對這些侵入的pc呢,他們也是會使得出現很多危機嘛,紅色的那些嘛,好,那就是它咖啡色的攻擊號角,集體的全面入進,這叫分散式的構思攻擊,就是不是打A,就是目標是同一個人,一致的攻擊某一台,就這樣子就是分散的攻擊,那在此攻擊下的受害者是什麼,第一個網路設備路由器,防火牆,然後是server,如主要servermail server這些呢都是什麼,可能被攻擊的目標,可能被選擇攻擊的目標,然後還有就是一些左邊一個server,右邊一個server,然後一些提供功能的機械,都有可能成為被攻擊的目標。那像CNNYahoo呢都有被攻擊過,因為它們比較大哦,而且現在呢駭客都很囂張,對一個網管而言,他說呢,你是不是想要把你的pc給幹掉,就是可以先寄出黑函,因為可能老闆沒有付你薪水,我們可以幫助你,就是可以攻擊任何一台的電腦,然後告訴你要怎麼連絡我們,你付錢的話就幫你攻擊,通常呢,有八十萬美金左右是這樣,所以呢在網路上面有很多他告訴你要怎麼樣做攻擊,所以駭客現在是很厲害,很猖狂。好,那現在對IPX來看,要怎麼樣去杜絕這種情況,那現在提供兩種方法跟大家講一下:第一個呢就是現在很多人都在用的方法,遠端的趨動來過濾,這個方法可以透過pgp來做,不需要另外別的設備,就可以直接來做,怎麼做呢,我們先看一下哦,這個攻擊的情況,像這個攻擊的目標,從四面八方而來,這個綠色的線從四面八方而來去攻擊這台,所以呢,這台已經很危險了因為它現在被攻擊,所以loading會很重沒有辦法提供正常的服務,所以就達到hacker的目的了,除此以外呢,它還會造成一些間接的傷害,有一部電影叫間接傷害阿諾演的,也就是今天他是他的目標對不對,但是呢他會影響到別人,跟他附近的也都會影響到,為什麼呢?因為他如果被攻擊的話,這台沒用了,那這台的loading也就會變的很重呀對不對,所以呢這樣就叫做間接傷害,所以呢這個方法也是滿好用的,好那什麼叫遠端的趨動呢,是這樣的,如果你是網管從業人員,你發現這台被攻擊了,比方說是這台被攻擊了,那你就用這台路由器去update,只要針對每一顆,不,就是第一個路由器做update就好了,邊緣的,就是網路的邊緣跟外面連接的路由器就可以了,然後呢那個路由器在做update之後呢,馬上把送往攻擊目標的通通丟到垃圾桶,ok差不多就是這樣利用pgd來做,(此時有人發問),那一般來說呢,這三要怎麼辦,就是加強追蹤,那是什麼,就是到底是那一個進來的,然後呢要上遊的一些driver連絡,麻煩你去處理一下,不要把東西丟給我,就這樣,好,那我剛才是怎麼做的哦,到底要怎麼做遠端趨動的部分哦,那事實上來講做法非常簡單,但有些基礎的東西你要先做好,先打好就這樣子,當然有些東西比較複雜,我也不想講detail,所以我想各位應該明白就可以了,首先第一步你要對所有的路由器,我強調是邊緣的路由器哦,在所有的邊緣路由器上面打上一個指令,這是什麼指令,這是一個靜態路由的指令,我們知道指令有靜態、有動態的指令,這是一個靜態的指令,ip是多少,192.0.2.0255.255.255.0,其它就無所謂不那麼重要,只要看這裡,看這個綠色的,就是如果要送到192.0.2.0的話呢,你就扔掉,就是當做不存在然後把它扔掉,那你怎麼知道這個地址呢,因為這個地址是不存在的一個地址,是可以用的,因為你如果用一個存在的地址那不是會影響到平常的用戶了,所以是不存在的地址,就是這個地址是沒有人在用的,所以你可以用,就是圖上的綠色的地方都沒有人用,你就可以拿來用,把它拿來當做垃圾桶,這是一個目標哦,就是所有的邊緣路由器你就打上這個指令,那這樣做會有什麼樣的好處呢,就是先一切準備先準備好而已,這是第一步,那第二步呢,第二步你就找一台router當做趨動的那台router,就是update的那台router,你先把那台router找出來,然後怎麼做呢,就是在pgd底下打一個,這個他有打一個很重要的哦,就是拿那個不存在的,然後進來以後再重新分佈,就是說我把今天送到路由的重新分佈到pgd裡面去,由pgdupdate,好那第三步呢,第三步就是一旦你知道那一個被攻擊了,然後你就打上剛才說的那個ip,跟那個255.255.255.0,然後你剛才做的那些步驟呢,就會把送進來的東西重新做分佈給pgdpgd就會送出去給其它的邊緣路由器,那些邊緣的路由器就會收到這個,下面這個路由,171.68.1.1的這個路由,所有的邊緣路由器都會收到哦,然後就看一下,你上遊是誰呀,你上遊就是192.0.2.1對不對,所以怎麼能不處理呢,所以所以有送往171.68.1.1的就直接扔掉了,就這樣子,這是一個非常特別的方法,用bgd來做,簡單又有效率,然後呢就這樣子,我剛才講到靜態路由就是利用bgd去把剛才說的那些路由器然後送到171.68.1.1的資料通通丟掉,那你的下一站是什麼,你的下一站是192.0.2.1,那怎麼樣才能到192.0.2.1,就是怎麼去扔掉,它的關鍵就在利用路由器來改變成你要扔掉的對象,就是首先要到目的地的話呢下一趟是什麼,是192.0.2.1,那要怎麼樣到192.0.2.1,就是先事先打好了嘛,這就是一個遠端趨動的方法,好,因為在遠端怎麼樣就已經扔掉了嘛,所以這個受害者等於對外怎麼樣,等於斷線了一樣,就像剛才教授提到的一樣,駭客也間接的達到了dos的攻擊了,那我們來看有沒有比較好一點的solution,那另外一個code的方法也是目前有很多人在用的方法,就是用一個特殊的router,它就像是一個大吸鐵一樣,它就把所有的東西都吸到這邊來,它會吸光所以送往攻擊目標的東西,就像本來要送往攻擊目標的對不對,現在都不送往攻擊目標了,都送給我了。就變成我當受害者,不讓真正的用戶當受害者,你通通送給我吧,這就是這樣的一個方法。那這個方法的目標呢第一個就是想辦法讓攻擊traffic轉向,轉到我這邊來,第二呢就是將它送來的traffic做進一步的分析,就是分析他是用怎麼樣的攻擊方式,他是從那邊來的諸如此類,好那我們來看這個圖,這裡有很多點對不對那怎麼做呢,很簡單,就是利用bgd,就是他把自己當做受害者,然後所有要送往目標的traffic就通通送給他,那再看這張圖,看到沒有,本來是要攻擊他的對不對,但是他冒充他是受害者,就是透過bgdrouter講說我就是受害者,就是叫送給目標的通通要送給他,這樣就轉向了。好那我們現在來看一下目前最好的解決方法,是leader head解決方案,這是一家公司,以色列的一家公司,這家是專門做這樣的事情,我們看一下他的解決方案是什麼,像在這一個的箱子裡面有兩個東西,一個是leader head guide另一個是leader head detecterdetecter可偵測有沒有一些攻擊行為的發生,如果他發覺有攻擊行為了,第一步是偵測嘛,如果他發生有攻擊行為了,這時候呢他就會通知另一個請他出來主持正義,他會怎麼做,他會第一跟路由器跑bgp,然後他就扮演之前講假扮受害者的角色,所以呢送往攻擊目標的就給他,然後現在呢他很厲害就像洗衣機一樣把那些有問題的都給扔掉,那那些沒有問題的就繼續送往真正的目標,那這樣送往到達的都是沒有問題的都是乾淨的,都是正常traffic之後所留下來的,它的解決方案是這樣的,好那這些問題我就講快一點哦,但像如果各位比較敏感一點的話會發現一個問題,就是這張圖比較簡化一點,實際上應該怎麼做呢,應該它送出去以後呀要經過這台路由器,這個樣子就是乙太網。它就是不是送給這個,而是送給那個。Ok,那我們看這個圖,這個就像這樣對不對,有攻擊行為發生了,好那這段時間要幹什麼,就是偵測嘛,就是現在出現問題了,然後呢出來主持正義,然後呢攻擊就會慢下來了,然後這樣你就可以知道那個是有問題那個是沒有問題的,它有個專利叫MVP,事實上這是個慣例對不對,就看那個慣例嘛其它就沒什麼特別的了,之間的行為就主要看它有個慣例在,就是有問題的經過後檢查後就只剩沒有問題的,那像這樣的技術不管是國內、國外大多是用在資料傳送的應用上呀對不對,那現在對這個社會而言,有那個價錢的分別嘛對不對,就比如說你這個park特高對不對,它的那個方法就是你可以進來一台,然後呢這台是跟每一台都跑bgp,它當做A,你都跟每一台跑bgp,這個應該沒有問題吧,那它為什麼要這樣強調每一台都跑bgp呢,就是如果你只跟R4R7R5bgp會不會有什麼問題,除非你有跟R2跑的話,R4知道要送給你對不對,那R2不知道呀所以他就會繼續往下,所以是R2不知道要送給你對不對,但是R2R4都要能送到目標呀,所以你也要跟R2跑,當然也要跟R4跑,對不對就這樣,所以bgp很重要就這樣,你要跟每一個都要跑,好,那在Q&A之前呢,我補充幾點,就是之間有跟教授也有提到,跟QoS比較有興趣,我提一個跟Qos比較有關係的一個方案,叫做MDR,我知道大家都知道這種伺服器呢從低端到高端都有,低端幾萬塊一顆,高端好幾千萬一顆,這之間的差異是好幾千萬的,像中華電信那種都是買上千萬的路由器,像平常用網路的時候為什麼會覺得還滿順的,是因為裡面用了這種高端的路由器,好那像這種在最高端的路由器叫GFR,然後在這其中的Qos的方法有一個叫MDR,就是modify digit router,在這邊跟大家做一個介紹,MDR呢有支援八種不同的class,有八類。事實上有八個queue,那麼MDR事實上有支援兩種不同的模式,一種是嚴謹模式,一種是輪流模式,嚴謹跟輪流OK,同時它也搭配著所謂的WID來做,WID就是所謂的拋棄,因為你的Qos不是只做排隊,也要做拋棄嘛,如果你queue滿了你要怎麼做,所以你做拋棄,拋棄不是每個人都一視同仁的哦,它是隨意拋棄,不是遠端拋棄哦,它是隨意拋棄,隨意拋棄呢它拋棄的門檻也比較不一樣,就是比較重要的,比較常用的traffic它使用的拋棄門檻比較高,比如說有達到百分之八十才去拋棄,然後呢比較不重要的traffic可能達到百分之二十就開始拋,所以呢就這樣不同的queue它的拋棄門檻不一樣,首先我們看第一種模式,輪流模式它是怎麼做的,首先在所有的queue裡面有一個較特別的queuedsqueue,另外其它的queue就是一般的queue,什麼叫輪流呢,怎麼輪流法,它自己是一個group,然後其它是一個group,然後就是這兩group做輪流,不是這八在輪流這要注意到呢,這個特別的跟下面這七一起輪流,你把它看成什麼,就是這是一個group,然後其它七是一個group,然後這兩group做輪流,好那我用圖解法應該會比較容易了解,這個queue就是比較特別的queue,這兩就是一般的queue,然後我就不同queue給一個額度,然後這個額度要乘上什麼mpu,才是你真正的額度,像這個第一個嘛對不對,乘一千五,然後你看到在這個queue裡面以兩種不同大小的額度的byte,比較小的是五百byte,比較大的像這個比較大的是一千五的你要看得懂這個圖的意思,假設哦比較小的五百,比較大的一千五,現在呢我服務第一個queue,它一個額度是五百byte的對不對,我替它服務完,是不是它額度還剩下一千,那第二動作完了以後你就欠我五百對不對,因為你第二是一千五,那你只剩下一千對不對,所以呢你的額度已經預支了五百這樣,所以這個就扔掉它,那像這個它的額度是三千,然後它的比例是二,然後呢送一個給它剩下二千五,再送一個變成一千,再送一個變成負五百對不對,因為現在那個是一千五百,那就不能再送啦,接下來換誰,還是換它,因為我剛才講過了,是這個跟這個這兩個輪流對不對,然後如果你先把你的放上去呢,因為剛才你先借過了嘛所以呢就先扣掉變一千,如果再送完一千五就變成負五百就不能送了,接下來輪到誰,輪到它,它額度是一千五的,然後呢送完一個一千,再送一個負五百,這種意思,然後呢接下來是換它送,它要加看一千五,變一千以此類推,好最後就是這樣子。這叫做輪流式的模式,好那通常這個queue內放什麼呢,這個queue都放優先等級比較高的然後比較想早一點離開router的,延遲時間比較短的,那另外一種模式叫什麼,叫嚴謹模式。嚴謹模式來講的話呢,你看嘛,第一個queue也是L queue但是它沒有credit,為什麼沒有credit呢,它的邏輯是這樣子,如果ds queue裡面有credit要清出來,沒有第二句話,把它清掉再說,把queue裡面的credit全都清過來,一旦queue裡面有資料要先送,這是L queue,然後呢,接下來這兩就在這邊輪流,跟前面一樣,但是你還是要偷看一下哦,這個queue裡面有沒有packet進來哦,有的話要先清光再說,做完以後再回來這邊,這種就是嚴謹的模式,所以這邊是MBR我們的技術它基本的概念是這樣。所以通常呢我們都用嚴謹的模式把那串資料放在L queue裡面,這樣你看它的延遲性非常的低,所以像國外很多比較大的廠,他們就有一種相關的技術把一些東西放MBR這種L queue裡面,然後對這個來講延遲性都非常的低,因為它幾乎不用怎麼等,一旦進去了就馬上會被服務到,那你也要考慮到這個問題呀,如果你的traffic太大的話哦,會讓這兩成為飢餓狀態,所以這個你要考慮到,好那不知道各位有沒有什麼問題