eno1にはIPアドレスがありません

eno1にはIPアドレスがありません

IPアドレスがないという質問が多いのですが、私の状況に合った解決策が見つからないようで残念です。私は技術的な詳細を通して、誰かがこのWindowsの従業員が何を間違っているかを指摘できることを願っています。

質問:新しいイーサネットPCI-xカードにはIPアドレスはありません。背景:DockerコンテナとSambaを実行するホーム開発サーバー。最初はワイヤレス設定メニューを使って設定しましたが、TP-LINK TG-3468ギガビットPIC Expressカードに変更するまではうまくいきました。

オペレーティングシステム:Ubuntu 16.04.3 LTS

$ifconfig eno1
br-1...
br-8...
docker0...
lo...

新しいネットワークカードの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インターフェースはブリッジを使用することです。

答え1

問題(またはブリッジングに関するErikFのコメントを考慮した問題の1つ)は、インターフェイスが接続されていないことです。

3: eno1: <NO-CARRIER,BROADCAST,MULTICAST,UP>

そして、NO-CARRIER欠落しているフラグLOWER_UP(「ローレイヤーアップ」、つまりリンク層、イーサネットを意味します)は、NICが(物理的に)何にも接続されていないように見えるため、NICがデータを送受信できないことを示します。ケーブルの片側が接続されていないか、スイッチがオフになっている可能性があります。

ルーティングの設定

IPアドレスはリンクローカルゲートウェイとしてのみ設定できます。つまり、インターフェイスの1つのネットワークにこのIP(IPアドレスとネットマスク)が必要です。

通常、これはパスを設定せずにゲートウェイをpingできます。

次のコマンドを使用することもできます。

ip route get 192.168.1.254

これらのパケットの処理方法を確認してください。結果は192.168.1.254 dev線ではなく線で192.168.1.254 viaなければなりません。

関連情報