Windows

“ip route add X dev X”的windows伺服器等價物是什麼

  • March 28, 2018

我在本地網路中有兩個子網 - 我需要通過本地埠從一秒到一秒訪問,而不使用網關。

在linux中我使用這個:

ip route add 90.5.5.0/24 dev eth0(伺服器有 IP 例如 91.6.6.5)。數據直接發送到 MAC - “所以只留在路由器中”。

請問如何在windows中設置這個?

謝謝帕維爾

編輯:這與在 Windows cmd 中指定到介面的路由不重複- 我的問題是來自一個本地物理網路中的一個介面的兩個 /24 子網 - 我不需要使用網關來到達第二個子網 - 但是如何?

您假設 Windows 網路堆棧的實現與 Linux 網路堆棧完全相同並且具有相同的優化。這不一定是真的。

但如果我理解正確,您首先要使用netsh interface ipv4 show interfaces標識您希望附加路由規範的介面的編號。我會用[IFnumber]辨識這個號碼。

那麼,如果系統自己的IP地址是91.6.6.5,那麼表示90.5.5.0/24網路也是通過同一個網卡直接連接的路由條目,語法為:

route add 90.5.5.0 mask 255.255.255.0 91.6.6.5 IF [IFnumber]

換句話說:在 Windowsroute命令的語法中,必須指定網關 IP 地址。但是,如果您不想使用網關,則需要指定介面自己的 IP 地址來代替網關,以滿足語法要求。

你可以試試這個,看看它是否有效。如果你這樣做route print了,它現在應該說 90.5.5.0 網路對於具有 91.6.6.5 IP 地址的同一介面是“線上連結”。如果需要,可以在命令中添加一個-p選項以持久儲存路由。

但如果它不起作用,您應該認識到這是一種非標準的 IP 聯網方式,並且不能保證在所有實施中都能成功。它還會導致從該系統發送到 90.5.5.0/24 網段的數據包具有技術上無效的源 IP 地址;但如果系統只關注第 2 層定址(“直接發送到 MAC”),它可能會起作用。如果任一端都有一個軟體防火牆,該防火牆具有內置的無效數據包過濾器,那麼這很容易成為這種技術的阻礙。

處理此問題的正常方法是向網路介面添加輔助 IP 地址(在 90.5.5.0/24 網段內)。添加該 IP 會自動將類似的路由添加到路由表,確保在將數據包發送到 90.5.5.0/24 網段時使用有效的源 IP 地址。

引用自:https://serverfault.com/questions/904810