Why is my ethernet interface called enp0s10 instead of eth0? The 2019 Stack Overflow Developer Survey Results Are In Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) 2019 Community Moderator Election Resultseth0: ERROR while getting interface flags: No such devicedisable persistent network device namingWhat's the difference between `en0` and `eth0`?Why is my nic ethN suddenly called p18pN?No network capabilities in CentOSMy ethernet device has strange name on UbuntuHow to enable “Predictable Network Interface Names”?Bridging ethernet interfaceHow to setup VLAN on same subnet as Ethernet?What does the eth0 interface name mean in Linux?Problem with network interfaceifconfig ethernet (eth0) no data floweth0: supported portsWhy can't set eth0 to be my target?Packets not moving through linux ethernet bridgeWhy my Raspberry pi receive no packets using Ethernet?Why does Linux network traffic only go through eth0?

How long does the line of fire that you can create as an action using the Investiture of Flame spell last?

does high air pressure throw off wheel balance?

"... to apply for a visa" or "... and applied for a visa"?

Format single node in tikzcd

how can a perfect fourth interval be considered either consonant or dissonant?

How should I replace vector<uint8_t>::const_iterator in an API?

Can a novice safely splice in wire to lengthen 5V charging cable?

Python - Fishing Simulator

Keeping a retro style to sci-fi spaceships?

How to pronounce 1ターン?

Is it ethical to upload a automatically generated paper to a non peer-reviewed site as part of a larger research?

Take groceries in checked luggage

Mortgage adviser recommends a longer term than necessary combined with overpayments

How to copy the contents of all files with a certain name into a new file?

Did God make two great lights or did He make the great light two?

Netflix Recommendations?

In horse breeding, what is the female equivalent of putting a horse out "to stud"?

What aspect of planet Earth must be changed to prevent the industrial revolution?

Is this wall load bearing? Blueprints and photos attached

How to split my screen on my Macbook Air?

How to delete random line from file using Unix command?

How to politely respond to generic emails requesting a PhD/job in my lab? Without wasting too much time

University's motivation for having tenure-track positions

Simulating Exploding Dice



Why is my ethernet interface called enp0s10 instead of eth0?



The 2019 Stack Overflow Developer Survey Results Are In
Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
2019 Community Moderator Election Resultseth0: ERROR while getting interface flags: No such devicedisable persistent network device namingWhat's the difference between `en0` and `eth0`?Why is my nic ethN suddenly called p18pN?No network capabilities in CentOSMy ethernet device has strange name on UbuntuHow to enable “Predictable Network Interface Names”?Bridging ethernet interfaceHow to setup VLAN on same subnet as Ethernet?What does the eth0 interface name mean in Linux?Problem with network interfaceifconfig ethernet (eth0) no data floweth0: supported portsWhy can't set eth0 to be my target?Packets not moving through linux ethernet bridgeWhy my Raspberry pi receive no packets using Ethernet?Why does Linux network traffic only go through eth0?



.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








49















When I run ifconfig -a, I only get lo and enp0s10 interfaces, not the classical eth0



What does enp0s10 mean? Why is there no eth0?










share|improve this question



















  • 4





    ifconfig is deprecated. Think about moving to ip from iproute2 soon.

    – solsTiCe
    Jun 13 '15 at 8:21

















49















When I run ifconfig -a, I only get lo and enp0s10 interfaces, not the classical eth0



What does enp0s10 mean? Why is there no eth0?










share|improve this question



















  • 4





    ifconfig is deprecated. Think about moving to ip from iproute2 soon.

    – solsTiCe
    Jun 13 '15 at 8:21













49












49








49


15






When I run ifconfig -a, I only get lo and enp0s10 interfaces, not the classical eth0



What does enp0s10 mean? Why is there no eth0?










share|improve this question
















When I run ifconfig -a, I only get lo and enp0s10 interfaces, not the classical eth0



What does enp0s10 mean? Why is there no eth0?







linux networking udev ethernet






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Feb 6 '18 at 2:11









muru

37.6k589165




37.6k589165










asked Jun 4 '14 at 15:33









Nico RodsevichNico Rodsevich

440159




440159







  • 4





    ifconfig is deprecated. Think about moving to ip from iproute2 soon.

    – solsTiCe
    Jun 13 '15 at 8:21












  • 4





    ifconfig is deprecated. Think about moving to ip from iproute2 soon.

    – solsTiCe
    Jun 13 '15 at 8:21







4




4





ifconfig is deprecated. Think about moving to ip from iproute2 soon.

– solsTiCe
Jun 13 '15 at 8:21





ifconfig is deprecated. Think about moving to ip from iproute2 soon.

– solsTiCe
Jun 13 '15 at 8:21










2 Answers
2






active

oldest

votes


















44














That's a change in how now udevd assigns names to ethernet devices. Now your devices use the "Predictable Interface Names", which are based on (and quoting the sources):




  1. Names incorporating Firmware/BIOS provided index numbers for on-board devices (example: eno1)

  2. Names incorporating Firmware/BIOS provided PCI Express hotplug slot index numbers (example: ens1)

  3. Names incorporating physical/geographical location of the connector of the hardware (example: enp2s0)

  4. Names incorporating the interfaces's MAC address (example: enx78e7d1ea46da)

  5. Classic, unpredictable kernel-native ethX naming (example: eth0)



The why's this changed is documented in the systemd freedesktop.org page, along with the method to disable this:



ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules


or if you use older versions:



ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules





share|improve this answer




















  • 6





    Following the freedesktop,org link, the main point is: The classic naming scheme for network interfaces applied by the kernel is to simply assign names beginning with "eth" to all interfaces as they are probed by the drivers. As the driver probing is generally not predictable for modern technology this means that as soon as multiple network interfaces are available the assignment of the names is generally not fixed anymore and it might very well happen that "eth0" on one boot ends up being "eth1" on the next. This can have serious security implications...

    – lepe
    Oct 17 '16 at 2:43



















55














Answer on "What does enp0s10 means?" question:



enp0s10:
| | |
v | |
en| | --> ethernet
v |
p0| --> bus number (0)
v
s10 --> slot number (10)


Source: udev-builtin-net_id.c on GitHub






share|improve this answer




















  • 5





    Came looking for this.

    – ffledgling
    Mar 7 '17 at 8:38






  • 1





    Since there is no ...fN part at the end of the NIC name, we can deduce that the function number is 0. After translating the numbers to hexadecimal (10 = "a" in hex), we know that enp0s10 means PCI device ID 00:0a.0.

    – telcoM
    23 hours ago











Your Answer








StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);

else
createEditor();

);

function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













draft saved

draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f134483%2fwhy-is-my-ethernet-interface-called-enp0s10-instead-of-eth0%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























2 Answers
2






active

oldest

votes








2 Answers
2






active

oldest

votes









active

oldest

votes






active

oldest

votes









44














That's a change in how now udevd assigns names to ethernet devices. Now your devices use the "Predictable Interface Names", which are based on (and quoting the sources):




  1. Names incorporating Firmware/BIOS provided index numbers for on-board devices (example: eno1)

  2. Names incorporating Firmware/BIOS provided PCI Express hotplug slot index numbers (example: ens1)

  3. Names incorporating physical/geographical location of the connector of the hardware (example: enp2s0)

  4. Names incorporating the interfaces's MAC address (example: enx78e7d1ea46da)

  5. Classic, unpredictable kernel-native ethX naming (example: eth0)



The why's this changed is documented in the systemd freedesktop.org page, along with the method to disable this:



ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules


or if you use older versions:



ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules





share|improve this answer




















  • 6





    Following the freedesktop,org link, the main point is: The classic naming scheme for network interfaces applied by the kernel is to simply assign names beginning with "eth" to all interfaces as they are probed by the drivers. As the driver probing is generally not predictable for modern technology this means that as soon as multiple network interfaces are available the assignment of the names is generally not fixed anymore and it might very well happen that "eth0" on one boot ends up being "eth1" on the next. This can have serious security implications...

    – lepe
    Oct 17 '16 at 2:43
















44














That's a change in how now udevd assigns names to ethernet devices. Now your devices use the "Predictable Interface Names", which are based on (and quoting the sources):




  1. Names incorporating Firmware/BIOS provided index numbers for on-board devices (example: eno1)

  2. Names incorporating Firmware/BIOS provided PCI Express hotplug slot index numbers (example: ens1)

  3. Names incorporating physical/geographical location of the connector of the hardware (example: enp2s0)

  4. Names incorporating the interfaces's MAC address (example: enx78e7d1ea46da)

  5. Classic, unpredictable kernel-native ethX naming (example: eth0)



The why's this changed is documented in the systemd freedesktop.org page, along with the method to disable this:



ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules


or if you use older versions:



ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules





share|improve this answer




















  • 6





    Following the freedesktop,org link, the main point is: The classic naming scheme for network interfaces applied by the kernel is to simply assign names beginning with "eth" to all interfaces as they are probed by the drivers. As the driver probing is generally not predictable for modern technology this means that as soon as multiple network interfaces are available the assignment of the names is generally not fixed anymore and it might very well happen that "eth0" on one boot ends up being "eth1" on the next. This can have serious security implications...

    – lepe
    Oct 17 '16 at 2:43














44












44








44







That's a change in how now udevd assigns names to ethernet devices. Now your devices use the "Predictable Interface Names", which are based on (and quoting the sources):




  1. Names incorporating Firmware/BIOS provided index numbers for on-board devices (example: eno1)

  2. Names incorporating Firmware/BIOS provided PCI Express hotplug slot index numbers (example: ens1)

  3. Names incorporating physical/geographical location of the connector of the hardware (example: enp2s0)

  4. Names incorporating the interfaces's MAC address (example: enx78e7d1ea46da)

  5. Classic, unpredictable kernel-native ethX naming (example: eth0)



The why's this changed is documented in the systemd freedesktop.org page, along with the method to disable this:



ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules


or if you use older versions:



ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules





share|improve this answer















That's a change in how now udevd assigns names to ethernet devices. Now your devices use the "Predictable Interface Names", which are based on (and quoting the sources):




  1. Names incorporating Firmware/BIOS provided index numbers for on-board devices (example: eno1)

  2. Names incorporating Firmware/BIOS provided PCI Express hotplug slot index numbers (example: ens1)

  3. Names incorporating physical/geographical location of the connector of the hardware (example: enp2s0)

  4. Names incorporating the interfaces's MAC address (example: enx78e7d1ea46da)

  5. Classic, unpredictable kernel-native ethX naming (example: eth0)



The why's this changed is documented in the systemd freedesktop.org page, along with the method to disable this:



ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules


or if you use older versions:



ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules






share|improve this answer














share|improve this answer



share|improve this answer








edited Jun 12 '15 at 23:48

























answered Jun 4 '14 at 15:43









BraiamBraiam

23.8k2078143




23.8k2078143







  • 6





    Following the freedesktop,org link, the main point is: The classic naming scheme for network interfaces applied by the kernel is to simply assign names beginning with "eth" to all interfaces as they are probed by the drivers. As the driver probing is generally not predictable for modern technology this means that as soon as multiple network interfaces are available the assignment of the names is generally not fixed anymore and it might very well happen that "eth0" on one boot ends up being "eth1" on the next. This can have serious security implications...

    – lepe
    Oct 17 '16 at 2:43













  • 6





    Following the freedesktop,org link, the main point is: The classic naming scheme for network interfaces applied by the kernel is to simply assign names beginning with "eth" to all interfaces as they are probed by the drivers. As the driver probing is generally not predictable for modern technology this means that as soon as multiple network interfaces are available the assignment of the names is generally not fixed anymore and it might very well happen that "eth0" on one boot ends up being "eth1" on the next. This can have serious security implications...

    – lepe
    Oct 17 '16 at 2:43








6




6





Following the freedesktop,org link, the main point is: The classic naming scheme for network interfaces applied by the kernel is to simply assign names beginning with "eth" to all interfaces as they are probed by the drivers. As the driver probing is generally not predictable for modern technology this means that as soon as multiple network interfaces are available the assignment of the names is generally not fixed anymore and it might very well happen that "eth0" on one boot ends up being "eth1" on the next. This can have serious security implications...

– lepe
Oct 17 '16 at 2:43






Following the freedesktop,org link, the main point is: The classic naming scheme for network interfaces applied by the kernel is to simply assign names beginning with "eth" to all interfaces as they are probed by the drivers. As the driver probing is generally not predictable for modern technology this means that as soon as multiple network interfaces are available the assignment of the names is generally not fixed anymore and it might very well happen that "eth0" on one boot ends up being "eth1" on the next. This can have serious security implications...

– lepe
Oct 17 '16 at 2:43














55














Answer on "What does enp0s10 means?" question:



enp0s10:
| | |
v | |
en| | --> ethernet
v |
p0| --> bus number (0)
v
s10 --> slot number (10)


Source: udev-builtin-net_id.c on GitHub






share|improve this answer




















  • 5





    Came looking for this.

    – ffledgling
    Mar 7 '17 at 8:38






  • 1





    Since there is no ...fN part at the end of the NIC name, we can deduce that the function number is 0. After translating the numbers to hexadecimal (10 = "a" in hex), we know that enp0s10 means PCI device ID 00:0a.0.

    – telcoM
    23 hours ago















55














Answer on "What does enp0s10 means?" question:



enp0s10:
| | |
v | |
en| | --> ethernet
v |
p0| --> bus number (0)
v
s10 --> slot number (10)


Source: udev-builtin-net_id.c on GitHub






share|improve this answer




















  • 5





    Came looking for this.

    – ffledgling
    Mar 7 '17 at 8:38






  • 1





    Since there is no ...fN part at the end of the NIC name, we can deduce that the function number is 0. After translating the numbers to hexadecimal (10 = "a" in hex), we know that enp0s10 means PCI device ID 00:0a.0.

    – telcoM
    23 hours ago













55












55








55







Answer on "What does enp0s10 means?" question:



enp0s10:
| | |
v | |
en| | --> ethernet
v |
p0| --> bus number (0)
v
s10 --> slot number (10)


Source: udev-builtin-net_id.c on GitHub






share|improve this answer















Answer on "What does enp0s10 means?" question:



enp0s10:
| | |
v | |
en| | --> ethernet
v |
p0| --> bus number (0)
v
s10 --> slot number (10)


Source: udev-builtin-net_id.c on GitHub







share|improve this answer














share|improve this answer



share|improve this answer








edited yesterday

























answered Sep 23 '16 at 12:38









DIG mblDIG mbl

72165




72165







  • 5





    Came looking for this.

    – ffledgling
    Mar 7 '17 at 8:38






  • 1





    Since there is no ...fN part at the end of the NIC name, we can deduce that the function number is 0. After translating the numbers to hexadecimal (10 = "a" in hex), we know that enp0s10 means PCI device ID 00:0a.0.

    – telcoM
    23 hours ago












  • 5





    Came looking for this.

    – ffledgling
    Mar 7 '17 at 8:38






  • 1





    Since there is no ...fN part at the end of the NIC name, we can deduce that the function number is 0. After translating the numbers to hexadecimal (10 = "a" in hex), we know that enp0s10 means PCI device ID 00:0a.0.

    – telcoM
    23 hours ago







5




5





Came looking for this.

– ffledgling
Mar 7 '17 at 8:38





Came looking for this.

– ffledgling
Mar 7 '17 at 8:38




1




1





Since there is no ...fN part at the end of the NIC name, we can deduce that the function number is 0. After translating the numbers to hexadecimal (10 = "a" in hex), we know that enp0s10 means PCI device ID 00:0a.0.

– telcoM
23 hours ago





Since there is no ...fN part at the end of the NIC name, we can deduce that the function number is 0. After translating the numbers to hexadecimal (10 = "a" in hex), we know that enp0s10 means PCI device ID 00:0a.0.

– telcoM
23 hours ago

















draft saved

draft discarded
















































Thanks for contributing an answer to Unix & Linux Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid


  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.

To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f134483%2fwhy-is-my-ethernet-interface-called-enp0s10-instead-of-eth0%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







-ethernet, linux, networking, udev

Popular posts from this blog

Creating 100m^2 grid automatically using QGIS?Creating grid constrained within polygon in QGIS?Createing polygon layer from point data using QGIS?Creating vector grid using QGIS?Creating grid polygons from coordinates using R or PythonCreating grid from spatio temporal point data?Creating fields in attributes table using other layers using QGISCreate .shp vector grid in QGISQGIS Creating 4km point grid within polygonsCreate a vector grid over a raster layerVector Grid Creates just one grid

Nikolai Prilezhaev Bibliography References External links Navigation menuEarly Russian Organic Chemists and Their Legacy092774english translationRussian Biography

How to link a C library to an Assembly library on Mac with clangHow do you set, clear, and toggle a single bit?Find (and kill) process locking port 3000 on MacWho is listening on a given TCP port on Mac OS X?How to start PostgreSQL server on Mac OS X?Compile assembler in nasm on mac osHow do I install pip on macOS or OS X?AFNetworking 2.0 “_NSURLSessionTransferSizeUnknown” linking error on Mac OS X 10.8C++ code for testing the Collatz conjecture faster than hand-written assembly - why?How to link a NASM code and GCC in Mac OS X?How to run x86 .asm on macOS Sierra