How to determine “Predictable Name” of network interfaceHow does Windows decide which DNS Server to use when resolving names?how can i control where pci devices are mounted?Second ip address on same interface CentOS 6.3Using Network Interface With Multiple IP AddressesSpecifying which network interface to useIdentification of physical network interface in linuxWhy is my eth0 called eno16777736?disabling predictable network interface names in xubuntu 15.10systemd: when during boot are network interface devices createdpredictable network interface names in systemd

Aligning group plot titles horizontally

Geometric inspiration behind Hal(irutan)'s Wolf(ram Language Logo)

Will there be more tax deductions if I put the house completely under my name, versus doing a joint ownership?

Wireless headphones interfere with Wi-Fi signal on laptop

Break long word (not long text!) in longtable cell

Why did the soldiers of the North disobey Jon?

Developers demotivated due to working on same project for more than 2 years

Can anyone give me examples of the relative-determinative 'which'?

Why is Drogon so much better in battle than Rhaegal and Viserion?

Was the dragon prowess intentionally downplayed in S08E04?

Will consteval functions allow template parameters dependent on function arguments?

Why would someone open a Netflix account using my Gmail address?

Meaning of "legitimate" in Carl Jung's quote "Neurosis is always a substitute for legitimate suffering."

Given 0s on Assignments with suspected and dismissed cheating?

Were any toxic metals used in the International Space Station?

Does the Rogue's Reliable Talent feature work for thieves' tools, since the rogue is proficient in them?

What do the "optional" resistor and capacitor do in this circuit?

Why when I add jam to my tea it stops producing thin "membrane" on top?

Why did Varys remove his rings?

Is there any deeper thematic meaning to the white horse that Arya finds in The Bells (S08E05)?

Understanding Deutch's Algorithm

Why are lawsuits between the President and Congress not automatically sent to the Supreme Court

Did any "washouts" of the Mercury program eventually become astronauts?

Were any of the books mentioned in this scene from the movie Hackers real?



How to determine “Predictable Name” of network interface


How does Windows decide which DNS Server to use when resolving names?how can i control where pci devices are mounted?Second ip address on same interface CentOS 6.3Using Network Interface With Multiple IP AddressesSpecifying which network interface to useIdentification of physical network interface in linuxWhy is my eth0 called eno16777736?disabling predictable network interface names in xubuntu 15.10systemd: when during boot are network interface devices createdpredictable network interface names in systemd






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;








4















I am setting up a new server and installed Ubuntu Bionic, which uses Predictable Network Interface Names.



The installer is running on a rescue system, which still uses old interface names like eth0, eth1, but the newly installed system has configured the first network card as enp8s0.



Using lshw, the bus info for this card is:



bus info: pci@0000:08:00.0


I would like to set up the other network interfaces without booting into the newly installed system yet, but don't know how to determine the predictable network interface names for the other cards.



Using lshw, I found another network card, which is currently disabled:



bus info: pci@0000:41:00.0


Is it possible to determine the predictable network interface name from this? Would it be something like enp41s0?



I have searched for a while and could not find any tool which would simply list all the devices together with their predictable names.



Edit: Why do I not want to boot the new system to find out? Because this would add an extra step to the setup process. Using the old interface naming, I could run a script to set up the server from the rescue system provided by the hosting company and it was ready for use. Now I would have to set up the server minus the additional network config first. Then I have to set up networking manually once the new system has booted, just to know the names of the interfaces.










share|improve this question
























  • Why not enable it and find out?

    – Reinderien
    May 4 at 16:52











  • It doesn't say 0000:00:41.0!

    – Michael Hampton
    May 4 at 17:40











  • freedesktop.org/wiki/Software/systemd/…

    – ivanivan
    May 4 at 19:34











  • @Reinderien I did eventually boot it to find out: that interface came up as enp65s0. I still wish I could see how this name was determined.

    – pymkin
    May 5 at 5:13

















4















I am setting up a new server and installed Ubuntu Bionic, which uses Predictable Network Interface Names.



The installer is running on a rescue system, which still uses old interface names like eth0, eth1, but the newly installed system has configured the first network card as enp8s0.



Using lshw, the bus info for this card is:



bus info: pci@0000:08:00.0


I would like to set up the other network interfaces without booting into the newly installed system yet, but don't know how to determine the predictable network interface names for the other cards.



Using lshw, I found another network card, which is currently disabled:



bus info: pci@0000:41:00.0


Is it possible to determine the predictable network interface name from this? Would it be something like enp41s0?



I have searched for a while and could not find any tool which would simply list all the devices together with their predictable names.



Edit: Why do I not want to boot the new system to find out? Because this would add an extra step to the setup process. Using the old interface naming, I could run a script to set up the server from the rescue system provided by the hosting company and it was ready for use. Now I would have to set up the server minus the additional network config first. Then I have to set up networking manually once the new system has booted, just to know the names of the interfaces.










share|improve this question
























  • Why not enable it and find out?

    – Reinderien
    May 4 at 16:52











  • It doesn't say 0000:00:41.0!

    – Michael Hampton
    May 4 at 17:40











  • freedesktop.org/wiki/Software/systemd/…

    – ivanivan
    May 4 at 19:34











  • @Reinderien I did eventually boot it to find out: that interface came up as enp65s0. I still wish I could see how this name was determined.

    – pymkin
    May 5 at 5:13













4












4








4








I am setting up a new server and installed Ubuntu Bionic, which uses Predictable Network Interface Names.



The installer is running on a rescue system, which still uses old interface names like eth0, eth1, but the newly installed system has configured the first network card as enp8s0.



Using lshw, the bus info for this card is:



bus info: pci@0000:08:00.0


I would like to set up the other network interfaces without booting into the newly installed system yet, but don't know how to determine the predictable network interface names for the other cards.



Using lshw, I found another network card, which is currently disabled:



bus info: pci@0000:41:00.0


Is it possible to determine the predictable network interface name from this? Would it be something like enp41s0?



I have searched for a while and could not find any tool which would simply list all the devices together with their predictable names.



Edit: Why do I not want to boot the new system to find out? Because this would add an extra step to the setup process. Using the old interface naming, I could run a script to set up the server from the rescue system provided by the hosting company and it was ready for use. Now I would have to set up the server minus the additional network config first. Then I have to set up networking manually once the new system has booted, just to know the names of the interfaces.










share|improve this question
















I am setting up a new server and installed Ubuntu Bionic, which uses Predictable Network Interface Names.



The installer is running on a rescue system, which still uses old interface names like eth0, eth1, but the newly installed system has configured the first network card as enp8s0.



Using lshw, the bus info for this card is:



bus info: pci@0000:08:00.0


I would like to set up the other network interfaces without booting into the newly installed system yet, but don't know how to determine the predictable network interface names for the other cards.



Using lshw, I found another network card, which is currently disabled:



bus info: pci@0000:41:00.0


Is it possible to determine the predictable network interface name from this? Would it be something like enp41s0?



I have searched for a while and could not find any tool which would simply list all the devices together with their predictable names.



Edit: Why do I not want to boot the new system to find out? Because this would add an extra step to the setup process. Using the old interface naming, I could run a script to set up the server from the rescue system provided by the hosting company and it was ready for use. Now I would have to set up the server minus the additional network config first. Then I have to set up networking manually once the new system has booted, just to know the names of the interfaces.







ubuntu networking systemd udev






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited May 5 at 5:27







pymkin

















asked May 4 at 14:58









pymkinpymkin

1457




1457












  • Why not enable it and find out?

    – Reinderien
    May 4 at 16:52











  • It doesn't say 0000:00:41.0!

    – Michael Hampton
    May 4 at 17:40











  • freedesktop.org/wiki/Software/systemd/…

    – ivanivan
    May 4 at 19:34











  • @Reinderien I did eventually boot it to find out: that interface came up as enp65s0. I still wish I could see how this name was determined.

    – pymkin
    May 5 at 5:13

















  • Why not enable it and find out?

    – Reinderien
    May 4 at 16:52











  • It doesn't say 0000:00:41.0!

    – Michael Hampton
    May 4 at 17:40











  • freedesktop.org/wiki/Software/systemd/…

    – ivanivan
    May 4 at 19:34











  • @Reinderien I did eventually boot it to find out: that interface came up as enp65s0. I still wish I could see how this name was determined.

    – pymkin
    May 5 at 5:13
















Why not enable it and find out?

– Reinderien
May 4 at 16:52





Why not enable it and find out?

– Reinderien
May 4 at 16:52













It doesn't say 0000:00:41.0!

– Michael Hampton
May 4 at 17:40





It doesn't say 0000:00:41.0!

– Michael Hampton
May 4 at 17:40













freedesktop.org/wiki/Software/systemd/…

– ivanivan
May 4 at 19:34





freedesktop.org/wiki/Software/systemd/…

– ivanivan
May 4 at 19:34













@Reinderien I did eventually boot it to find out: that interface came up as enp65s0. I still wish I could see how this name was determined.

– pymkin
May 5 at 5:13





@Reinderien I did eventually boot it to find out: that interface came up as enp65s0. I still wish I could see how this name was determined.

– pymkin
May 5 at 5:13










1 Answer
1






active

oldest

votes


















5














Details of the naming scheme are in the source code: udev/udev-builtin-net_id.c. Some common schemes are PCI physical, PCI hotplug, and onboard. Your enp interface suggests physical.



Stripping out exotic and irrelevant bits from the comments leaves these rules:



 * Two character prefixes based on the type of interface:
* en — Ethernet
*
* Type of names:
* [P<domain>]p<bus>s<slot>[f<function>][n<phys_port_name>|d<dev_port>]
* — PCI geographical location
*
* All multi-function PCI devices will carry the [f<function>] number in the
* device name, including the function 0 device.
*
*
* When using PCI geography, The PCI domain is only prepended when it is not 0.


That PCI bus name is formatted as domain:bus:slot.function.



Assuming it is not a multifunction device, pci@0000:41:00.0 appears as enp65s0, since hex 41 converts to decimal 65.






share|improve this answer

























  • Thanks for the explanation. Funnily, the device turned up as enp65s0 after booting into the new OS. I was looking for a tool that could tell me these names without having to boot the new system, it slows down the server setup.

    – pymkin
    May 5 at 5:13






  • 1





    @pymkin The PCI bus and other numbers shown in lspci etc. are in hex; the numbers used in the interface name are in decimal. So you have to convert from hex to decimal.

    – Michael Hampton
    May 5 at 5:31











  • @MichaelHampton that explains it, thanks! HEX 41 -> DEC 65. So pci@0000:41:00.0 becomes enp65s0

    – pymkin
    May 5 at 5:36











Your Answer








StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "2"
;
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: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
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%2fserverfault.com%2fquestions%2f965873%2fhow-to-determine-predictable-name-of-network-interface%23new-answer', 'question_page');

);

Post as a guest















Required, but never shown

























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes









5














Details of the naming scheme are in the source code: udev/udev-builtin-net_id.c. Some common schemes are PCI physical, PCI hotplug, and onboard. Your enp interface suggests physical.



Stripping out exotic and irrelevant bits from the comments leaves these rules:



 * Two character prefixes based on the type of interface:
* en — Ethernet
*
* Type of names:
* [P<domain>]p<bus>s<slot>[f<function>][n<phys_port_name>|d<dev_port>]
* — PCI geographical location
*
* All multi-function PCI devices will carry the [f<function>] number in the
* device name, including the function 0 device.
*
*
* When using PCI geography, The PCI domain is only prepended when it is not 0.


That PCI bus name is formatted as domain:bus:slot.function.



Assuming it is not a multifunction device, pci@0000:41:00.0 appears as enp65s0, since hex 41 converts to decimal 65.






share|improve this answer

























  • Thanks for the explanation. Funnily, the device turned up as enp65s0 after booting into the new OS. I was looking for a tool that could tell me these names without having to boot the new system, it slows down the server setup.

    – pymkin
    May 5 at 5:13






  • 1





    @pymkin The PCI bus and other numbers shown in lspci etc. are in hex; the numbers used in the interface name are in decimal. So you have to convert from hex to decimal.

    – Michael Hampton
    May 5 at 5:31











  • @MichaelHampton that explains it, thanks! HEX 41 -> DEC 65. So pci@0000:41:00.0 becomes enp65s0

    – pymkin
    May 5 at 5:36















5














Details of the naming scheme are in the source code: udev/udev-builtin-net_id.c. Some common schemes are PCI physical, PCI hotplug, and onboard. Your enp interface suggests physical.



Stripping out exotic and irrelevant bits from the comments leaves these rules:



 * Two character prefixes based on the type of interface:
* en — Ethernet
*
* Type of names:
* [P<domain>]p<bus>s<slot>[f<function>][n<phys_port_name>|d<dev_port>]
* — PCI geographical location
*
* All multi-function PCI devices will carry the [f<function>] number in the
* device name, including the function 0 device.
*
*
* When using PCI geography, The PCI domain is only prepended when it is not 0.


That PCI bus name is formatted as domain:bus:slot.function.



Assuming it is not a multifunction device, pci@0000:41:00.0 appears as enp65s0, since hex 41 converts to decimal 65.






share|improve this answer

























  • Thanks for the explanation. Funnily, the device turned up as enp65s0 after booting into the new OS. I was looking for a tool that could tell me these names without having to boot the new system, it slows down the server setup.

    – pymkin
    May 5 at 5:13






  • 1





    @pymkin The PCI bus and other numbers shown in lspci etc. are in hex; the numbers used in the interface name are in decimal. So you have to convert from hex to decimal.

    – Michael Hampton
    May 5 at 5:31











  • @MichaelHampton that explains it, thanks! HEX 41 -> DEC 65. So pci@0000:41:00.0 becomes enp65s0

    – pymkin
    May 5 at 5:36













5












5








5







Details of the naming scheme are in the source code: udev/udev-builtin-net_id.c. Some common schemes are PCI physical, PCI hotplug, and onboard. Your enp interface suggests physical.



Stripping out exotic and irrelevant bits from the comments leaves these rules:



 * Two character prefixes based on the type of interface:
* en — Ethernet
*
* Type of names:
* [P<domain>]p<bus>s<slot>[f<function>][n<phys_port_name>|d<dev_port>]
* — PCI geographical location
*
* All multi-function PCI devices will carry the [f<function>] number in the
* device name, including the function 0 device.
*
*
* When using PCI geography, The PCI domain is only prepended when it is not 0.


That PCI bus name is formatted as domain:bus:slot.function.



Assuming it is not a multifunction device, pci@0000:41:00.0 appears as enp65s0, since hex 41 converts to decimal 65.






share|improve this answer















Details of the naming scheme are in the source code: udev/udev-builtin-net_id.c. Some common schemes are PCI physical, PCI hotplug, and onboard. Your enp interface suggests physical.



Stripping out exotic and irrelevant bits from the comments leaves these rules:



 * Two character prefixes based on the type of interface:
* en — Ethernet
*
* Type of names:
* [P<domain>]p<bus>s<slot>[f<function>][n<phys_port_name>|d<dev_port>]
* — PCI geographical location
*
* All multi-function PCI devices will carry the [f<function>] number in the
* device name, including the function 0 device.
*
*
* When using PCI geography, The PCI domain is only prepended when it is not 0.


That PCI bus name is formatted as domain:bus:slot.function.



Assuming it is not a multifunction device, pci@0000:41:00.0 appears as enp65s0, since hex 41 converts to decimal 65.







share|improve this answer














share|improve this answer



share|improve this answer








edited May 5 at 8:51









pymkin

1457




1457










answered May 4 at 19:28









John MahowaldJohn Mahowald

9,9841714




9,9841714












  • Thanks for the explanation. Funnily, the device turned up as enp65s0 after booting into the new OS. I was looking for a tool that could tell me these names without having to boot the new system, it slows down the server setup.

    – pymkin
    May 5 at 5:13






  • 1





    @pymkin The PCI bus and other numbers shown in lspci etc. are in hex; the numbers used in the interface name are in decimal. So you have to convert from hex to decimal.

    – Michael Hampton
    May 5 at 5:31











  • @MichaelHampton that explains it, thanks! HEX 41 -> DEC 65. So pci@0000:41:00.0 becomes enp65s0

    – pymkin
    May 5 at 5:36

















  • Thanks for the explanation. Funnily, the device turned up as enp65s0 after booting into the new OS. I was looking for a tool that could tell me these names without having to boot the new system, it slows down the server setup.

    – pymkin
    May 5 at 5:13






  • 1





    @pymkin The PCI bus and other numbers shown in lspci etc. are in hex; the numbers used in the interface name are in decimal. So you have to convert from hex to decimal.

    – Michael Hampton
    May 5 at 5:31











  • @MichaelHampton that explains it, thanks! HEX 41 -> DEC 65. So pci@0000:41:00.0 becomes enp65s0

    – pymkin
    May 5 at 5:36
















Thanks for the explanation. Funnily, the device turned up as enp65s0 after booting into the new OS. I was looking for a tool that could tell me these names without having to boot the new system, it slows down the server setup.

– pymkin
May 5 at 5:13





Thanks for the explanation. Funnily, the device turned up as enp65s0 after booting into the new OS. I was looking for a tool that could tell me these names without having to boot the new system, it slows down the server setup.

– pymkin
May 5 at 5:13




1




1





@pymkin The PCI bus and other numbers shown in lspci etc. are in hex; the numbers used in the interface name are in decimal. So you have to convert from hex to decimal.

– Michael Hampton
May 5 at 5:31





@pymkin The PCI bus and other numbers shown in lspci etc. are in hex; the numbers used in the interface name are in decimal. So you have to convert from hex to decimal.

– Michael Hampton
May 5 at 5:31













@MichaelHampton that explains it, thanks! HEX 41 -> DEC 65. So pci@0000:41:00.0 becomes enp65s0

– pymkin
May 5 at 5:36





@MichaelHampton that explains it, thanks! HEX 41 -> DEC 65. So pci@0000:41:00.0 becomes enp65s0

– pymkin
May 5 at 5:36

















draft saved

draft discarded
















































Thanks for contributing an answer to Server Fault!


  • 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%2fserverfault.com%2fquestions%2f965873%2fhow-to-determine-predictable-name-of-network-interface%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







Popular posts from this blog

Wikipedia:Vital articles Мазмуну Biography - Өмүр баян Philosophy and psychology - Философия жана психология Religion - Дин Social sciences - Коомдук илимдер Language and literature - Тил жана адабият Science - Илим Technology - Технология Arts and recreation - Искусство жана эс алуу History and geography - Тарых жана география Навигация менюсу

Bruxelas-Capital Índice Historia | Composición | Situación lingüística | Clima | Cidades irmandadas | Notas | Véxase tamén | Menú de navegacióneO uso das linguas en Bruxelas e a situación do neerlandés"Rexión de Bruxelas Capital"o orixinalSitio da rexiónPáxina de Bruselas no sitio da Oficina de Promoción Turística de Valonia e BruxelasMapa Interactivo da Rexión de Bruxelas-CapitaleeWorldCat332144929079854441105155190212ID28008674080552-90000 0001 0666 3698n94104302ID540940339365017018237

What should I write in an apology letter, since I have decided not to join a company after accepting an offer letterShould I keep looking after accepting a job offer?What should I do when I've been verbally told I would get an offer letter, but still haven't gotten one after 4 weeks?Do I accept an offer from a company that I am not likely to join?New job hasn't confirmed starting date and I want to give current employer as much notice as possibleHow should I address my manager in my resignation letter?HR delayed background verification, now jobless as resignedNo email communication after accepting a formal written offer. How should I phrase the call?What should I do if after receiving a verbal offer letter I am informed that my written job offer is put on hold due to some internal issues?Should I inform the current employer that I am about to resign within 1-2 weeks since I have signed the offer letter and waiting for visa?What company will do, if I send their offer letter to another company