怎么在Linux路由上設置IP與MAC綁定
發表時間:2023-07-11 來源:明輝站整理相關軟件相關文章人氣:
[摘要]在有些系統中有這樣的需求, 希望內部網中的某幾個IP地址連接互聯網, 而又希望這些IP地址不被非法用戶盜用。 可以通過下面的解決辦法實現: 首先使用ipchains或者iptables來設定只允...
在有些系統中有這樣的需求, 希望內部網中的某幾個IP地址連接互聯網, 而又希望這些IP地址不被非法用戶盜用。 可以通過下面的解決辦法實現:
首先使用ipchains或者iptables來設定只允許合法的IP地址連出。
對于合法IP建立IP/Mac捆綁。 要討論這個問題我們首先需要了解ARP協議的工作原理, arp協議是地址解析協議(Address Resolution Protocol)的縮寫, 其作用及工作原理如下:
在底層的網絡通信中, 兩個節點想要相互通信, 必須先要知道源與目標的MAC地址。 為了讓系統能快速地找到一個遠程節點的MAC地址, 每一個本地的內核都保存有一個即時的查詢表(稱為ARP緩存)。 ARP中有影射遠程主機的IP地址到其對應的MAC地址的一個列表。 地址解析協議(ARP)緩存是一個常駐內存的數據結構, 其中的內容是由本地系統的內核來管理和維護的。 默認的情況下, ARP緩存中保留有最近十分鐘本地系統與之通信的節點的IP地址(和對應的MAC地址)。
當一個遠程主機的MAC地址存在于本地主機的ARP 緩存中, 轉換遠程節點的IP地址為MAC地址不會遇到問題。 然而在許多情況下, 遠程主機的MAC地址并不存在于本地的ARP緩存中, 系統會怎么處理呢?在知道一個遠程主機的IP地址, 但是MAC地址不在本地的ARP緩存中的時候, 以下的過程用來獲取遠程節點的MAC地址:本地主機發送一個廣播包給網絡中的所有的節點, 詢問是否有對應的IP地址。 一個節點(只有一個)會回答這個ARP廣播信息。 在回應的信息包里就會包含有這個遠程主機的MAC地址。 在收到這個返回包后, 本地節點就會在本地ARP緩存中記錄遠程節點的MAC地址。
如果我們將IP/MAC對應關系建立為固定的, 也就是對那些合法IP地址建立靜態的MAC對應關系, 那么即使非法用戶盜用了IP地址linux路由器在回應這些IP發出的連接請求時則不會通過arp協議詢問其mac地址而是使用Linux建立的靜態MAC地址、發出應答數據這樣盜用IP者則不會得到應答數據從而不能使用網絡服務。
建立靜態IP/MAC捆綁的方法是:建立/etc/ethers文件, 其中包含正確的IP/MAC對應關系, 格式如下:
192.168.2.32 08:00:4E:B0:24:47
然后再/etc/rc.d/rc.local最后添加:arp -f即可
2.4內核的iptables可以對IP和Mac同時進行限定, 使用該功能對合法IP的規則同時限定IP地址和Mac地址即可。
上面是電腦上網安全的一些基礎常識,學習了安全知識,幾乎可以讓你免費電腦中毒的煩擾。