eno1 上沒有 IP 地址
我很遺憾地說,儘管有很多關於沒有 IP 地址的問題,但我似乎無法找到針對我的具體情況的解決方案。我希望通過一些技術細節,有人可以指出這個 windows 傢伙他哪裡出錯了。
**問題:**新的乙太網 PCI-x 卡上沒有 IP 地址。背景:執行 docker 容器和 samba 的家庭開發伺服器。最初是使用無線安裝菜單設置的,在我嘗試用 TP-LINK TG-3468 Gigabit PIC Express 卡替換之前工作正常。
作業系統:Ubuntu 16.04.3 LTS
$ifconfig eno1 br-1... br-8... docker0... lo...
注意到我沒有看到新 NIC 的 eno1,但確實看到了一些 docker 創建的介面
$ifconfig eno1 eno1 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 everruns:0 carrier:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Interrupt:20 Memory:f7f00000-f7f20000
內容
/etc/network/interfaces
:auto lo iface lo inet loopback auto eno1 iface eno1 inet dhcp
我相信我的路由存在問題,儘管我無法弄清楚如何設置路由到我的網關的東西
$route Destination Gateway Genmask Flags Metric Ref Use Iface 172.17.0.0 * 255.255.0.0 U 0 0 0 docker0 172.18.0.0 * 255.255.0.0 U 0 0 0 br-8... 172.19.0.0 * 255.255.0.0 U 0 0 0 br-1...
嘗試設置到路由器的路由:
sudo route add default gw 192.168.1.254
結果是
SIOCADDRT: Network is unreachable
我還嘗試將介面文件設置為嘗試從路由器中獲取靜態 IP,但這也沒有任何改善。我從來沒有獲得IP,我永遠也做不到。
編輯1:結果
ip route get 192.168.1.254
RTNETLINK answers: Network is unreachable
編輯 2:嘗試通過以下方式手動配置靜態 IP:
sudo /sbin/ifconfig eth0 192.168.1.91 netmask 255.255.255.0 broadcast 192.168.1.255
之後仍然無法ping通路由器。
更多資訊:
$sudo lshw -numeric -C network *-network description Ethernet interface product: 82579V Gigabit Network Connection [8086:1503] vendor: Intel Corporation [8086] physical id: 19 bus info: pci@0000:00:19.0 logical name: eno1 version: 04 serial: XX:XX:XX:XX:XX:XX capacity: 1Gbit/s width: 32 bits clock: 33MHz capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k firmware=0.13-4 ip=192.168.1.91 latency=0 link=no multicast=yes port=twisted pair resources: irq:33 memory:f7f00000-f7f1ffff memoroy:f7f39000-f7f39fff ioport:f080(size=32)
編輯3:
$ip link show eno1 3: eno1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000 link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff
XX 是我的 MAC 地址。
@EricF,未安裝 brctl 並且不
bridge link show
返回任何內容。我的理解是,這些介面是由 docker 創建的,以允許流量進入我目前已關閉的容器。如果這些容器被啟動,那麼相同的bridge link show
命令會返回我最初沒有列出的介面列表。我對此的評估是 eno1 沒有使用網橋,而 docker 介面使用了。
問題(或問題之一,考慮到 ErikF 關於橋接的評論)是您的介面未連接:
3: eno1: <NO-CARRIER,BROADCAST,MULTICAST,UP>
NO-CARRIER
和缺少的標誌(LOWER_UP
對於“低層啟動”意味著鏈路層,乙太網)告訴我們 NIC 無法發送或接收數據,僅僅是因為它似乎沒有連接到任何東西(物理上)。可能電纜沒有插入一側或開關已關閉…路由配置
您只能配置連結本地的網關等 IP 地址,即您的介面之一必須在其網路中具有此 IP(IP 地址和網路遮罩)。
通常這意味著您可以在不配置任何路由的情況下 ping 網關。
你也可以使用命令
ip route get 192.168.1.254
看看如何處理這些數據包。結果必須是一條
192.168.1.254 dev
線,而不是一條192.168.1.254 via
線。