arp_announce
問(wèn)題描述
arp_ignore配置為1是為了不讓服務(wù)器相應(yīng)關(guān)于vip的請(qǐng)求,那么arp_announce配置為2的作用又是什么???
問(wèn)題解答
回答1:有關(guān)arp_ignore的相關(guān)介紹:
arp_ignore:定義對(duì)目標(biāo)地址為本地IP的ARP詢問(wèn)不同的應(yīng)答模式0
0 - (默認(rèn)值): 回應(yīng)任何網(wǎng)絡(luò)接口上對(duì)任何本地IP地址的arp查詢請(qǐng)求
1 - 只回答目標(biāo)IP地址是來(lái)訪網(wǎng)絡(luò)接口本地地址的ARP查詢請(qǐng)求
2 -只回答目標(biāo)IP地址是來(lái)訪網(wǎng)絡(luò)接口本地地址的ARP查詢請(qǐng)求,且來(lái)訪IP必須在該網(wǎng)絡(luò)接口的子網(wǎng)段內(nèi)
3 - 不回應(yīng)該網(wǎng)絡(luò)界面的arp請(qǐng)求,而只對(duì)設(shè)置的唯一和連接地址做出回應(yīng)
4-7 - 保留未使用
8 -不回應(yīng)所有(本地地址)的arp查詢
有關(guān)arp_announce的相關(guān)介紹:
arp_announce:對(duì)網(wǎng)絡(luò)接口上,本地IP地址的發(fā)出的,ARP回應(yīng),作出相應(yīng)級(jí)別的限制: 確定不同程度的限制,宣布對(duì)來(lái)自本地源IP地址發(fā)出Arp請(qǐng)求的接口
0 - (默認(rèn)) 在任意網(wǎng)絡(luò)接口(eth0,eth1,lo)上的任何本地地址
1 -盡量避免不在該網(wǎng)絡(luò)接口子網(wǎng)段的本地地址做出arp回應(yīng). 當(dāng)發(fā)起ARP請(qǐng)求的源IP地址是被設(shè)置應(yīng)該經(jīng)由路由達(dá)到此網(wǎng)絡(luò)接口的時(shí)候很有用.此時(shí)會(huì)檢查來(lái)訪IP是否為所有接口上的子網(wǎng)段內(nèi)ip之一.如果改來(lái)訪IP不屬于各個(gè)網(wǎng)絡(luò)接口上的子網(wǎng)段內(nèi),那么將采用級(jí)別2的方式來(lái)進(jìn)行處理.
2 - 對(duì)查詢目標(biāo)使用最適當(dāng)?shù)谋镜氐刂?在此模式下將忽略這個(gè)IP數(shù)據(jù)包的源地址并嘗試選擇與能與該地址通信的本地地址.首要是選擇所有的網(wǎng)絡(luò)接口的子網(wǎng)中外出訪問(wèn)子網(wǎng)中包含該目標(biāo)IP地址的本地地址. 如果沒(méi)有合適的地址被發(fā)現(xiàn),將選擇當(dāng)前的發(fā)送網(wǎng)絡(luò)接口或其他的有可能接受到該ARP回應(yīng)的網(wǎng)絡(luò)接口來(lái)進(jìn)行發(fā)送.
關(guān)于對(duì)arp_announce 理解的一點(diǎn)補(bǔ)充
其實(shí)就是路由器的問(wèn)題,因?yàn)槁酚善饕话闶莿?dòng)態(tài)學(xué)習(xí)ARP包的(一般動(dòng)態(tài)配置DHCP的話),當(dāng)內(nèi)網(wǎng)的機(jī)器要發(fā)送一個(gè)到外部的ip包,那么它就會(huì)請(qǐng)求 路由器的Mac地址,發(fā)送一個(gè)arp請(qǐng)求,這個(gè)arp請(qǐng)求里面包括了自己的ip地址和Mac地址,而linux默認(rèn)是使用ip的源ip地址作為arp里面 的源ip地址,而不是使用發(fā)送設(shè)備上面的 ,這樣在lvs這樣的架構(gòu)下,所有發(fā)送包都是同一個(gè)VIP地址,那么arp請(qǐng)求就會(huì)包括VIP地址和設(shè)備 Mac,而路由器收到這個(gè)arp請(qǐng)求就會(huì)更新自己的arp緩存,這樣就會(huì)造成ip欺騙了,VIP被搶奪,所以就會(huì)有問(wèn)題。
arp緩存為什么會(huì)更新了,什么時(shí)候會(huì)更新呢,為了減少arp請(qǐng)求的次數(shù),當(dāng)主機(jī)接收到詢問(wèn)自己的arp請(qǐng)求的時(shí)候,就會(huì)把源ip和源Mac放入自 己的arp表里面,方便接下來(lái)的通訊。如果收到不是詢問(wèn)自己的包(arp是廣播的,所有人都收到),就會(huì)丟掉,這樣不會(huì)造成arp表里面無(wú)用數(shù)據(jù)太多導(dǎo)致 有用的記錄被刪除。
在設(shè)置參數(shù)的時(shí)候?qū)rp_ignore 設(shè)置為1,意味著當(dāng)別人的arp請(qǐng)求過(guò)來(lái)的時(shí)候,如果接收的設(shè)備上面沒(méi)有這個(gè)ip,就不做出響應(yīng),默認(rèn)是0,只要這臺(tái)機(jī)器上面任何一個(gè)設(shè)備上面有這個(gè)ip,就響應(yīng)arp請(qǐng)求,并發(fā)送mac地址
1)vip(virtual ip)。直接路由模式的vip必須跟服務(wù)器對(duì)外提供服務(wù)的ip地址在同一個(gè)網(wǎng)段,并且lvs 負(fù)載均衡器和其他所有提供相同功能的服務(wù)器都使用這個(gè)vip;
2)vip被綁定在環(huán)回接口lo0:0上,其廣播地址是其本身,子網(wǎng)掩碼是255.255.255.255。這與標(biāo)準(zhǔn)的網(wǎng)絡(luò)地址設(shè)置有很大的不同。采用這種可變長(zhǎng)掩碼方式把網(wǎng)段劃分成只含一個(gè)主機(jī)地址的目的是避免ip地址沖突;
3)echo這段的作用是抑制arp廣播。如果不做arp抑制,將會(huì)有眾多的機(jī)器向其他宣稱:“嗨!我是奧巴馬,我在這里呢!”,這樣就亂套了。
相關(guān)文章:
1. android - NavigationView 的側(cè)滑菜單中如何保存新增項(xiàng)(通過(guò)程序添加)2. tp5 不同控制器中的變量調(diào)用問(wèn)題3. 微信小程序可以用gulp,webpack嗎?4. mysql服務(wù)無(wú)法啟動(dòng)1067錯(cuò)誤,誰(shuí)知道正確的解決方法?5. ueditor上傳服務(wù)器提示后端配置項(xiàng)沒(méi)有正常加載,求助!!!!!6. python - 為什么正常輸出中文沒(méi)有亂碼,zip函數(shù)之后出現(xiàn)中文編程unicode編碼的問(wèn)題,我是遍歷輸出的啊。7. 老師 我是一個(gè)沒(méi)有學(xué)過(guò)php語(yǔ)言的準(zhǔn)畢業(yè)生 我希望您能幫我一下8. 這段代碼既不提示錯(cuò)誤也看不到結(jié)果,請(qǐng)老師明示錯(cuò)在哪里,謝謝!9. php7.3.4中怎么開(kāi)啟pdo驅(qū)動(dòng)10. 提示語(yǔ)法錯(cuò)誤語(yǔ)法錯(cuò)誤: unexpected ’abstract’ (T_ABSTRACT)
