2011-08-27 19:01:10 +0000 2011-08-27 19:01:10 +0000
20
20

Ubuntuのイーサネットインターフェイスが見つからない - ルータに接続することはできません

Ubuntu 10.04のマシン(Sony Vaio VGN-SR490)をルーターに直接接続したイーサネットケーブルを使ってインターネットに接続するのに苦労しています。

Windowsマシンを使って同じケーブルを使ってインターネットに接続できているので、Linuxの設定に問題があります。

問題の原因を突き止めて解決するにはどうしたらいいですか?

$ ifconfig

lo Link encap:Local Loopback  
          inet addr:127.0.0.1 Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING MTU:16436 Metric:1

vmnet1 Link encap:Ethernet HWaddr 00:50:56:c0:00:01  
          inet addr:192.168.79.1 Bcast:192.168.79.255 Mask:255.255.255.0
          inet6 addr: fe80::250:56ff:fec0:1/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

vmnet8 Link encap:Ethernet HWaddr 00:50:56:c0:00:08  
          inet addr:192.168.192.1 Bcast:192.168.192.255 Mask:255.255.255.0
          inet6 addr: fe80::250:56ff:fec0:8/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

Windows (Vista) でのネットワーク設定は以下の通りです:

Ethernet adapter Local Area Connection:

   Connection-specific DNS Suffix . : [removed by me].
   Link-local IPv6 Address . . . . . : [removed by me]
   IPv4 Address. . . . . . . . . . . : 192.168.1.103
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.1.1

これらの結果から私の IP アドレスを検閲しました。もしその情報が必要ならば、私に知らせてください。

/etc/network/interfacesの内容です。

auto lo
iface lo inet loopback

auto eth0を追加した後の最新の結果は以下の通りです。

$ sudo ifup eth0

Internet Systems Consortium DHCP Client V3.1.3
Copyright 2004-2009 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

SIOCSIFADDR: No such device
eth0: ERROR while getting interface flags: No such device
eth0: ERROR while getting interface flags: No such device
Bind socket to interface: No such device
Failed to bring up eth0.

modprobeを実行した結果です。

$ sudo modprobe msk

FATAL: Module msk not found.

$ dmesg | grep eth

私は、この質問にコメントしている人たちのリクエストに応えて、コンピュータからLinuxを削除し、Windows XPをインストールしました。ネットワークカードの詳細を調べるためのプログラムをインストールして実行しました。その情報は以下の通りです。

Network
    You are not connected to the internet
        Computer Name
            NetBIOS Name JOE-LAPTOP
            DNS Name joe-laptop
            Domain Name joe-laptop
        Remote Desktop
                Console
                    State Active
                    Domain joe-laptop
                RDP-Tcp
                    State Listen
        WinInet Info
            An internal error occurred.
        Wi-Fi Info
            Wi-Fi not enabled
        WinHTTPInfo
            WinHTTPSessionProxyType No proxy
            Session Proxy
            Session Proxy Bypass
            Connect Retries 5
            Connect Timeout 60000
            HTTP Version HTTP 1.1
            Max Connects Per 1.0 Servers INFINITE
            Max Connects Per Servers INFINITE
            Max HTTP automatic redirects 10
            Max HTTP status continue 10
            Send Timeout 30000
            IEProxy Auto Detect No
            IEProxy Auto Config
            IEProxy
            IEProxy Bypass
            Default Proxy Config Access Type No proxy
            Default Config Proxy
            Default Config Proxy Bypass
        Adapters List
        Network Shares
            No network shares

ネットワークアダプタのリストは空っぽのようです。今度はWindows XPとUbuntu Linuxのデュアルブートの両方をインストールしてみます。やはりWindowsからでもインターネットにアクセスできない。これはパソコンのハードウェアの問題なのか、ルーター自体の問題なのか、疑問に思っています。他のコンピュータは、この同じルータに接続して、正常に動作することができます。(結局これを投稿しているのはそういうことなんですよ!)

回答 (7)

16
16
16
2011-08-30 18:08:59 +0000

まず第一に、あなたのイーサネットはUbuntuによって管理されていません。管理されているかどうかに関わらず、すべてのネットワークデバイスを見ることができます。ifconfig -aのリストにethXが表示されている場合、解決策は簡単なはずです。以下は ifconfig ファイルに入れる必要があります。

auto ethX
iface ethX inet dhcp

1行目はインターフェースの管理を「有効化」し、2行目はDHCPとIPに設定します。

ただし、ifconfig -aをしてもethXのインターフェイスすら表示されない場合は、ドライバの問題です(Ubuntuはインターフェイスすら表示されていない)。これを解決するには、WindowsのデバイスマネージャからPCIのベンダーIDとイーサネットカードのデバイスIDをチェックして、 ここ と照らし合わせて、それに対応したドライバが見つかるかどうかを確認してください(ベンダーIDはメーカー、デバイスIDはイーサネットカードのモデル)。Linuxでは/etc/network/interfacesを使う方法もあります。

Windows 7では、ベンダー/デバイスIDを取得するにはデバイスマネージャを使います – Network Interfacesノードを開き、ネットワークカードをダブルクリックして'詳細'をクリックし、ドロップダウンリストから “Hardware IDs "を選択します。Vendor ID は ifconfig -a のプレフィックスの後にある 4 桁の 16 進数で、Device ID はベンダーの直後にある lspci の後にある 4 桁の 16 進数です。

6
6
6
2015-03-20 22:16:56 +0000

私も同じような問題を抱えていました。ifconfig -aを実行することで、私のパソコンのネットワークデバイスはp4p1loだけだと判断しました。eth0はありませんでした。

そこで、/etc/network/interfacesを編集して、eth0のインスタンスをすべてp4p1に置き換えました。ファイルの内容は以下のようになりました。

auto lo
iface lo inet loopback

auto p4p1
iface p4p1 inet dhcp

再起動後、ネットワークは正常に動作していました。

6
6
6
2011-08-28 20:55:51 +0000

コメントの中には、eth0 をインストールするための udev とそのルールを調べることを示唆するものは何もありません。私のシステムでは、/etc/udev/rules.d/75-network-devices.rules に以下のように書かれています;

# Local network rules to name your network cards.
#
# These rules were generated by nethelper.sh, but you can
# customize them.
#
# You may edit them as needed.
# (If, for example, your machine has more than one network
# card and you need to be sure they will always be given
# the same name, like eth0, based on the MAC address)
#
# If you delete this file, /lib/udev/nethelper.sh will try to
# generate it again the next time udev is started.

KERNEL=="eth?", ATTR{address}=="original has my MAC address here", NAME="eth0"

また、udevd が起動していることを確認してください。これがSlackwareベースのシステムでethxを作成するものです。

1
1
1
2011-09-03 04:20:42 +0000

また、ITH0が今までにあったことをアーティファクトとしてinitに何かがあるかどうかを ls /etc/init.d | grep eth と確認してみてください。上記はGentooで何を使用しているかですが、私はUbuntuが異なるメカニズムを使用していると思いますが、そのショットの価値があります。

私はこのような問題を抱えていたUbuntu 6.06に戻って、私はMB上のCMOSをクリアして終了し、何とかそれは私の問題を解決しました。それはしかし、暗闇の中での刺し傷だ。

0
0
0
2017-05-18 18:09:42 +0000

何ヶ月も毛を抜いていた自分には解決しました。

1.表示をクリックして上部にあるアップデートマネージャーに移動します。 2. リストの一番下にあるカーネルのバージョンを選択します(私の場合は4.4.0-78でしたが、4.8より上のバージョンになる人もいるでしょう)。 3. インストールをクリック。

WiFiドングルを外してみると、なんと有線でインターネットができるようになりました。もちろん無線ドングルを抜いた状態では、wlan0はありません。

0
0
0
2013-03-19 03:18:19 +0000
SIOCSIFADDR: No such device
eth0: ERROR while getting interface flags: No such device
eth0: ERROR while getting interface flags: No such device
Bind socket to interface: No such device
Failed to bring up eth0.

70-persistent-net.rulesのファイル名を/etc/udev/rules.dに変更するだけです。

-1
-1
-1
2015-12-09 18:55:15 +0000

一般的に、ネットワークインターフェースが表示されない場合は、名前が違う(eth0ではなくeth1のような)か、ドライバがロードされていないかのどちらかの可能性があります。私が同じような問題を抱えていたときは、/etc/interfaces を調整するか、modprobe を実行することで解決できました。

関連する質問

6
10
3
5
8