ไม่มีอินเตอร์เฟส eth0 Ethernet ใน Ubuntu - ไม่สามารถเชื่อมต่อกับเราเตอร์ได้


20

ฉันมีปัญหาในการรับเครื่อง Ubuntu 10.04 ของฉัน (Sony Vaio VGN-SR490) เพื่อเชื่อมต่ออินเทอร์เน็ตโดยใช้สายอีเธอร์เน็ตที่เชื่อมต่อโดยตรงกับเราเตอร์ของฉัน

ฉันสามารถเชื่อมต่ออินเทอร์เน็ตโดยใช้สายเคเบิลเดียวกันนี้โดยใช้เครื่อง Windows ดังนั้นมีบางอย่างผิดปกติกับวิธีการตั้งค่า Linux

ฉันจะทราบได้อย่างไรว่าปัญหาคืออะไรและแก้ไขได้อย่างไร

นี่คือการตั้งค่าเครือข่ายของฉันบน 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 ฉันสงสัยว่านี่อาจเป็นปัญหาฮาร์ดแวร์กับคอมพิวเตอร์หรือปัญหาของเราเตอร์เอง คอมพิวเตอร์เครื่องอื่นสามารถเชื่อมต่อกับเราเตอร์เดียวกันนี้และทำงานได้ดี (นั่นเป็นวิธีที่ฉันโพสต์สิ่งนี้หลังจากทั้งหมด!)


ขอบคุณที่ติดกับฉัน ฉันพยายามย่อโพสต์ของคุณให้สั้นลงเพื่อให้เราเห็นสิ่งต่าง ๆ ชัดเจนขึ้น (คุณสามารถลบความคิดเห็นเล็กน้อยได้ถ้าต้องการ) ดูเหมือนว่าข้อผิดพลาดที่คุณพบนั้นบ่อยมากกับ Ubuntu และ VMware คุณทำงานจริงอูบุนตูเองเป็นเครื่องเสมือน? หรือติดตั้ง Ubuntu บนคอมพิวเตอร์หรือไม่ การค้นหาเว็บสำหรับSIOCSIFADDR: ไม่มีอุปกรณ์ดังกล่าวปรากฏขึ้นมาบ้าง แต่ดูเหมือนว่าจะเกี่ยวข้องกับ Ubuntu เป็นเครื่องเสมือน
slhck

คุณช่วยโพสต์ผลลัพธ์ของdmesg | grep eth และดูว่าอินเทอร์เฟซเครือข่ายใด ๆ ที่ระบุไว้โดยใช้lspci
Linker3000

@slhck ไม่ Ubuntu ไม่ได้ทำงานเป็นเครื่องเสมือน ฉันติดตั้ง Ubuntu เป็นระบบปฏิบัติการบนคอมพิวเตอร์ของฉัน ติดตั้ง VMware แล้ว แต่ยังไม่ได้ทำงาน ที่น่าสนใจคือฉันเพิ่งบูตคอมพิวเตอร์จาก Ubuntu LiveCD และพบปัญหาเดียวกันแม้หลังจากทำตามคำแนะนำของคุณบน LiveCD ฉันเริ่มสงสัยอย่างยิ่งว่าเป็นปัญหาฮาร์ดแวร์
Kathryn Hallett

1
@ Linker3000 ผลลัพธ์ของการรัน dmesg | grep eth ว่างเปล่าและฉันไม่เห็นอินเทอร์เฟซเครือข่ายใด ๆ ที่ระบุโดยใช้ lspci
Kathryn Hallett

คุณสามารถโพสต์ mke / รุ่นของเครื่องหรือถ้าเป็น DIY ทำมาเธอร์บอร์ดและรุ่นหรือถ้าคุณสามารถบูต Windows ดูว่าอินเตอร์เฟซเครือข่ายอยู่ในรายการในตัวจัดการอุปกรณ์
Linker3000

คำตอบ:


16

ประการแรกอีเธอร์เน็ตของคุณไม่ได้รับการจัดการโดย Ubuntu ลองใช้ifconfig -aเพียงifconfigเพื่อให้คุณสามารถดูอุปกรณ์เครือข่ายทั้งหมดของคุณจัดการหรือไม่ หากคุณไม่เห็น ethX ในifconfig -aรายการ, การแก้ปัญหาควรจะตรงไปตรงมาและคุณดูเหมือนจะได้รับครึ่งหนึ่งของมัน ความต้องการต่อไปนี้เป็น/etc/network/interfacesไฟล์ของคุณ:

auto ethX
iface ethX inet dhcp

การจัดการบรรทัดแรก "เปิดใช้งาน" ของอินเตอร์เฟสและบรรทัดที่สองตั้งค่าเป็น DHCP และ IP

อย่างไรก็ตามถ้าคุณไม่เห็นส่วนต่อประสาน ethx ใด ๆ เมื่อคุณทำifconfig -aมันเป็นปัญหาของไดรเวอร์ (Ubuntu ไม่เห็นแม้แต่อินเทอร์เฟซ) ในการแก้ปัญหานี้ให้ตรวจสอบจากตัวจัดการอุปกรณ์ของ Windows สำหรับ PCI Vendor ID และ ID อุปกรณ์ของการ์ดอีเธอร์เน็ตของคุณซึ่งคุณสามารถอ้างอิงไขว้ที่นี่และดูว่าคุณสามารถค้นหาไดรเวอร์สำหรับนั้นได้หรือไม่ (Vendor ID เป็นผู้ผลิต เป็นรูปแบบที่เฉียบคมของการ์ดอีเธอร์เน็ต) lspciทางเลือกในลินุกซ์ที่จะทำคือผ่านทาง

ใน Windows 7 การรับ ID ผู้ขาย / อุปกรณ์นั้นผ่านตัวจัดการอุปกรณ์ - เปิดโหนด Network Interfaces ดับเบิลคลิกที่การ์ดเครือข่ายของคุณคลิกที่ 'รายละเอียด' และเลือก "ID ฮาร์ดแวร์" จากรายการแบบหล่นลง รหัสผู้ขายคือตัวเลขฐานสิบหก 4 หลังVEN_คำนำหน้าและรหัสอุปกรณ์คือเลขฐานสิบหก 4 หลัง&DEV_ทันทีหลังจากผู้ขาย


1
เหตุใดอุปกรณ์อีเธอร์เน็ตจึงไม่ตรวจพบและตั้งค่าเหมือนที่ติดตั้งบน Ubuntu บนเดสก์ท็อป ทำไมกระโดดพิเศษผ่านห่วงนี้? ความปลอดภัยหรืออะไรอย่างอื่น?
warsong

สวัสดีการแก้ปัญหาไม่ได้แก้ปัญหาของฉันและอุปกรณ์ไม่ได้อยู่ใน lspci ข้อเสนอแนะใด ๆ เกี่ยวกับ Ubuntu? (ไม่มี Windows install atm)
Aurimas

ลิงก์ในคำตอบนี้จะตาย เป็นไปได้หรือไม่ที่จะให้ลิงค์ใหม่?
marijnr

6

ฉันไม่เห็นอะไรเลยในความคิดเห็นที่แนะนำให้คุณดู udev และกฎที่ควรติดตั้ง eth0 ในระบบของฉันใน /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 ทำงานอยู่ นี่คือสิ่งที่สร้าง ethx บนระบบที่ใช้ Slackware


ฉันเจอโพสต์นี้ในขณะที่มองหาโซลูชันที่คล้ายกันคุณช่วยชี้ให้เห็นว่าฉันจะหาที่อยู่ MAC ของการ์ดอีเธอร์เน็ตของฉันได้อย่างไรแม้ว่าฉันจะไม่เห็นมันอยู่ในรายการ
Gufran

ขอบคุณ นี่เป็นการแก้ไขปัญหาของฉัน บน Ubuntu 12.04 LTS ฉันมี /etc/udev/rules.d/70-persistent-net.rules ซึ่งจดทะเบียนสองอินเตอร์เฟซของฉันเป็นeth2และeth3, althought dmesg | grep ethระบุไว้เป็น,eth0 eth1ที่เกิดขึ้นเพราะก่อนหน้านี้ระบบอยู่บนฮาร์ดแวร์ที่แตกต่างกันดังนั้นที่อยู่ MAC ที่แตกต่างกันและตัวระบุที่แตกต่างกันหลังจากทั้งหมด คำตอบนี้ช่วยฉันค้นหาปัญหา ขอบคุณ
Janis Veinbergs

ไฟล์นี้ไม่มีแม้แต่สำหรับฉัน /etc/udev/rules.d/70-persistent-net.rulesสิ่งที่ผมมีคือ
donquixote

6

ฉันมีปัญหาที่คล้ายกัน โดยการเรียกใช้ifconfig -aผมพิจารณาแล้วว่าอุปกรณ์เครือข่ายเฉพาะบนคอมพิวเตอร์ของฉันและp4p1 ไม่มีloeth0

ดังนั้นผมจึงแก้ไข/etc/network/interfacesเปลี่ยนทุกกรณีด้วยeth0 p4p1เนื้อหาของไฟล์อยู่ในขณะนี้:

auto lo
iface lo inet loopback

auto p4p1
iface p4p1 inet dhcp

หลังจากรีบูทระบบเครือข่ายก็ใช้งานได้ดี

ถ้ามันสำคัญฉันก็ใช้ Ubuntu 12.04.5 Server edition


สำหรับฉันมันคือ p2p1, Ubuntu 14.04
TheOsp

1
สำหรับฉันมันเป็นenp0s8บน Ubuntu 16.04
Afrowave

คุณคือฮีโร่ที่เราต้องการ สำหรับฉันนี่เป็นปีที่ 33 ฉันไม่รู้เลยว่ามันหมายถึงอะไรทั้งหมด แต่มันใช้งานได้ ... ฉันทำงานภายใน VMWare btw และทำงานได้ดีจนกระทั่งไม่ได้ทันใด อาจเป็นการอัปเดตที่ทำให้เกิด
Nicolas GUILLAUME

1

คุณอาจต้องการลอง ls /etc/init.d | grep eth และดูว่ามีอะไรใน init เป็นสิ่งประดิษฐ์ที่ ETH0 เคยมีมาหรือไม่ ด้านบนเป็นสิ่งที่ใช้ใน Gentoo ฉันคิดว่า Ubuntu ใช้กลไกที่แตกต่าง แต่คุ้มค่ากับการยิง

ย้อนกลับไปใน Ubuntu 6.06 ฉันมีปัญหาเช่นนี้ฉันสิ้นสุดการล้าง CMOS ใน MB และแก้ไขปัญหาของฉันได้ นั่นคือการแทงในความมืด


0
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


0

ฉันแก้ไขปัญหาให้ตัวเองหลังจากดึงผมมาหลายเดือน:

  1. ไปที่ตัวจัดการอัปเดตที่ด้านบนคลิกที่มุมมอง
  2. เลือกรุ่นเคอร์เนลที่ด้านล่างของรายการ (ซึ่งสำหรับฉันคือ 4.4.0-78 แต่สำหรับบางรุ่นจะเป็นเวอร์ชันด้านบน 4.8)
  3. คลิกที่ติดตั้ง

ฉันถอดปลั๊กดองเกิล WiFi แล้วและดูเถิดตอนนี้ฉันมีอินเทอร์เน็ตมีสาย wlan0ด้วยดองเกิลไร้สายออกแน่นอนมีอยู่ในขณะนี้ไม่มี


1
OP กำลังถามเกี่ยวกับ Ubuntu ไม่ใช่ Windows XP
2560

-1

โดยทั่วไปหากคุณไม่เห็นอินเทอร์เฟซเครือข่ายอาจเป็นเพราะมีชื่อแตกต่างกัน (เช่น eth1 แทนที่จะเป็น eth0) หรือไม่มีไดรเวอร์โหลดอยู่ เมื่อฉันมีปัญหาที่คล้ายกันฉันสามารถแก้ไขได้โดยการปรับ / etc / interfaces หรือ modprobe


คุณสามารถอธิบายอย่างละเอียดถึงวิธีการทำให้สำเร็จได้อย่างไร? ขอบคุณ
fixer1234
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.