如何禁用乙太網適配器的 TCP/IP?
我在帶有兩個乙太網適配器的(虛擬)機器上執行 CentOS 6.3。我將 eth0 連接到 TCP/IP LAN,將 eth1 連接到 DSL 調製解調器。該系統旨在用作專用路由器/防火牆,並設置了 iptables 來執行 SNAT、DNAT 和所需的過濾。
這很好用,但是我更換了 DSL 調製解調器,不幸的是,新的(更快的)調製解調器是防白痴的,所以 NAT 會自動進行,並且不允許我將公共 IP 傳遞給 eth1。我不能容忍雙重 NAT,所以我做了一些研究並讀到這個調製解調器可以通過在電腦上執行 PPPoE 來“欺騙”為我的電腦提供公共 IP。
因此,我將 pppd 設置為使用 eth1,創建 ppp0 連接,然後在我的自定義 iptables 配置腳本中替換 eth1。這似乎在一定程度上有效,但我必須打開防火牆才能讓它工作,而且它很不穩定。
部分是為了幫助進行故障排除,我想完全排除任何 TCP/IP 流量被直接路由到 eth1 的可能性,我的“友好”調製解調器會很高興地對其進行 NAT。
據我所知,PPPoE 位於 IP 下方,而不是 IP 上方 - 在它直接處理乙太網幀的物理介面上。因此,我什至根本不需要在 eth1 上配置 IP 網路才能使 pppd 工作,因此在 eth1 上執行的 IP 網路只會使事情變得不必要地複雜化。
這就是我發現的地方,愚蠢的我,我不知道如何在 Linux 上禁用 TCP/IP 堆棧!我知道在 Windows 機器上,您可以取消選中適配器屬性中的 TCP/IP 協議,但這裡我執行的是純文字 CentOS,我不知道該怎麼做。
顯然這不是一個很普遍的願望,因為我一直在搜尋網際網路無濟於事。乙太網適配器是TCP/IP 連接似乎是一個硬性假設。嗯,通常…
謝謝你的幫助!凱文
ip addr flush dev eth1
只需使用和刪除 IPv4 和 IPv6 地址ip -6 addr flush dev eth1
。
您不能禁用 TCP/IP,但可以禁用介面:只需
ip link set eth1 down
在控制台中執行。
/etc/sysconfig/network-scripts/ifcfg-eth1
只留下ONBOOT=no
內部以使更改持久。PD:正如gertvdijk 所指出的,這也將禁用
pppd
通過eth1
.