同台機器2個網絡卡配置同段IP

2022-09-12 06:57:12 字數 1594 閱讀 1712

看個例子:

1.on server

ifconfig eth4 192.168.1.10/24 up

ifconfig eth5 192.168.1.11/24 up

2.on client

ifconfig eth4 192.168.1.20/24 up

3.on client

ping 192.168.1.10 -c 3

ping 192.168.1.11 -c 3

actual results:

[root@client ~]# arp

address hwtype hwaddress flags mask iface

192.168.1.11 ether 00:1b:21:4a:fe:98 c eth4 <***** 錯了吧?

192.168.1.10 ether 00:1b:21:4a:fe:98 c eth4

expected results:

[root@client ~]# arp

address hwtype hwaddress flags mask iface

192.168.1.11 ether 00:1b:21:4a:fe:99 c eth4

192.168.1.10 ether 00:1b:21:4a:fe:98 c eth4

additional info:

23:28:23.272726 arp reply 192.168.1.10 is-at 00:1b:21:4a:fe:99 (oui unknown)

23:28:23.272783 arp reply 192.168.1.10 is-at 00:1b:21:4a:fe:98 (oui unknown)

23:28:46.750823 arp reply 192.168.1.11 is-at 00:1b:21:4a:fe:99 (oui unknown)

23:28:46.750850 arp reply 192.168.1.11 is-at 00:1b:21:4a:fe:98 (oui unknown)

這個問題是是由linux的路由和arp機制造成的,主要是路由。

在linux中,ip位址是主機的屬性,而不是介面的屬性。

這就造成在反向路由查詢時,可以考慮包進入的介面,也可以不考慮。

此時arp請求包會有兩個應答,client會選擇後乙個。

關鍵是server會接著發乙個arp請求,並且始終從eth4發出來(因為eth4的路由在前邊),

這樣client在應該該arp請求時,又會更新arp表。

所以我們在client上看到arp表中始終是eth4的mac。

解決方法:

1 echo 1 > /proc/sys/net/ipv4/conf/all/arp_filter 

2 ip route add 192.168.1.20/32 nexthop via 192.168.1.10 weight 1 nexthop via 192.168.1.11 weight 1

這裡,新增的新路由的作用是以192.168.1.20作為目標位址進行反向路由檢查時,依次迴圈選擇eth4和eth5。

而arp_filter的作用是,只有通過了反向路由檢查的包才會發出去。

一台機器同時啟動2個tomcat

1.特別要注意 不要設定catalina home 2.分別修改安裝目錄下的conf子目錄中的server.xml檔案 a.修改http訪問埠 預設為8080埠 將8080修改為tomcat不在使用的埠號。此處所設的埠號即是以後訪問web時所用的埠號。b.修改shutdown埠 預設為8005埠 將...

怎麼在一台機器上同時啟動2個tomcat

設定 server.xml 檔案 a.修改http訪問埠 預設為 8080埠 將8080修改為tomcat不在使用的埠號。此處所設的埠號即是以後訪問web時所用的埠號。b.修改shutdown埠 預設為8005埠 將8005修改為沒有在使用的埠號,例如8055。c.修改8009埠,將8009修改為沒...

linux 2臺機器之間建立ssh互信

環境說明 192.168.157.101 vms001 rhel7.1 192.168.157.102 vms002 rhel7.1 vms001伺服器操作 1.vms001生成公鑰私鑰 命令執行成功,會在 ssh目錄下生成2個檔案 id rsa.pub為公鑰檔案,現實生活中相當於鎖 id rsa ...