In Ubuntu 16+, for a network interface “ens192”, where does the “192” come from?











up vote
0
down vote

favorite












We have dozens of virtual machines in several data centers around the world. When upgrading an Ubuntu VM from 14 to 16 (as a step toward upgrading them to Ubuntu 18), the network interface names change. I am aware of this, and I know why they change, so that is not my question. My question is where does the number (the 33 in ens33, the 192 in ens192, etc.) come from? I have read many StackExchange questions and answers about what to do to get the server working: that is not the problem. What I want to know is how to predict what the ens### will be before the server is upgraded to Ubuntu 16. I have looked at lshw and lspci, and I can't see any reason why these numbers are chosen.



Please: where does the 192 (or 33, or anything else) come from?










share|improve this question


















  • 1




    The format is <device name><slot #><port #>. It was a dumb idea to standardize network names. For example ens01p01 means the ethernet network port on slot #1 port #1.
    – heynnema
    Dec 1 at 21:32












  • In oyr environment, they are always in the form ens### (or ens##). How would I know what that ### (or ##) is going to be before the system removed eth0 and creates ens192?
    – user3158465
    Dec 2 at 1:06












  • I don't think you can. There might be similarities when using similar motherboards with similar ports. I can't say for sure. You can always add the kernel parameter net.ifnames=0 which keeps the old names... eth0, etc.
    – heynnema
    Dec 2 at 3:00

















up vote
0
down vote

favorite












We have dozens of virtual machines in several data centers around the world. When upgrading an Ubuntu VM from 14 to 16 (as a step toward upgrading them to Ubuntu 18), the network interface names change. I am aware of this, and I know why they change, so that is not my question. My question is where does the number (the 33 in ens33, the 192 in ens192, etc.) come from? I have read many StackExchange questions and answers about what to do to get the server working: that is not the problem. What I want to know is how to predict what the ens### will be before the server is upgraded to Ubuntu 16. I have looked at lshw and lspci, and I can't see any reason why these numbers are chosen.



Please: where does the 192 (or 33, or anything else) come from?










share|improve this question


















  • 1




    The format is <device name><slot #><port #>. It was a dumb idea to standardize network names. For example ens01p01 means the ethernet network port on slot #1 port #1.
    – heynnema
    Dec 1 at 21:32












  • In oyr environment, they are always in the form ens### (or ens##). How would I know what that ### (or ##) is going to be before the system removed eth0 and creates ens192?
    – user3158465
    Dec 2 at 1:06












  • I don't think you can. There might be similarities when using similar motherboards with similar ports. I can't say for sure. You can always add the kernel parameter net.ifnames=0 which keeps the old names... eth0, etc.
    – heynnema
    Dec 2 at 3:00















up vote
0
down vote

favorite









up vote
0
down vote

favorite











We have dozens of virtual machines in several data centers around the world. When upgrading an Ubuntu VM from 14 to 16 (as a step toward upgrading them to Ubuntu 18), the network interface names change. I am aware of this, and I know why they change, so that is not my question. My question is where does the number (the 33 in ens33, the 192 in ens192, etc.) come from? I have read many StackExchange questions and answers about what to do to get the server working: that is not the problem. What I want to know is how to predict what the ens### will be before the server is upgraded to Ubuntu 16. I have looked at lshw and lspci, and I can't see any reason why these numbers are chosen.



Please: where does the 192 (or 33, or anything else) come from?










share|improve this question













We have dozens of virtual machines in several data centers around the world. When upgrading an Ubuntu VM from 14 to 16 (as a step toward upgrading them to Ubuntu 18), the network interface names change. I am aware of this, and I know why they change, so that is not my question. My question is where does the number (the 33 in ens33, the 192 in ens192, etc.) come from? I have read many StackExchange questions and answers about what to do to get the server working: that is not the problem. What I want to know is how to predict what the ens### will be before the server is upgraded to Ubuntu 16. I have looked at lshw and lspci, and I can't see any reason why these numbers are chosen.



Please: where does the 192 (or 33, or anything else) come from?







networking interface






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Dec 1 at 20:49









user3158465

1




1








  • 1




    The format is <device name><slot #><port #>. It was a dumb idea to standardize network names. For example ens01p01 means the ethernet network port on slot #1 port #1.
    – heynnema
    Dec 1 at 21:32












  • In oyr environment, they are always in the form ens### (or ens##). How would I know what that ### (or ##) is going to be before the system removed eth0 and creates ens192?
    – user3158465
    Dec 2 at 1:06












  • I don't think you can. There might be similarities when using similar motherboards with similar ports. I can't say for sure. You can always add the kernel parameter net.ifnames=0 which keeps the old names... eth0, etc.
    – heynnema
    Dec 2 at 3:00
















  • 1




    The format is <device name><slot #><port #>. It was a dumb idea to standardize network names. For example ens01p01 means the ethernet network port on slot #1 port #1.
    – heynnema
    Dec 1 at 21:32












  • In oyr environment, they are always in the form ens### (or ens##). How would I know what that ### (or ##) is going to be before the system removed eth0 and creates ens192?
    – user3158465
    Dec 2 at 1:06












  • I don't think you can. There might be similarities when using similar motherboards with similar ports. I can't say for sure. You can always add the kernel parameter net.ifnames=0 which keeps the old names... eth0, etc.
    – heynnema
    Dec 2 at 3:00










1




1




The format is <device name><slot #><port #>. It was a dumb idea to standardize network names. For example ens01p01 means the ethernet network port on slot #1 port #1.
– heynnema
Dec 1 at 21:32






The format is <device name><slot #><port #>. It was a dumb idea to standardize network names. For example ens01p01 means the ethernet network port on slot #1 port #1.
– heynnema
Dec 1 at 21:32














In oyr environment, they are always in the form ens### (or ens##). How would I know what that ### (or ##) is going to be before the system removed eth0 and creates ens192?
– user3158465
Dec 2 at 1:06






In oyr environment, they are always in the form ens### (or ens##). How would I know what that ### (or ##) is going to be before the system removed eth0 and creates ens192?
– user3158465
Dec 2 at 1:06














I don't think you can. There might be similarities when using similar motherboards with similar ports. I can't say for sure. You can always add the kernel parameter net.ifnames=0 which keeps the old names... eth0, etc.
– heynnema
Dec 2 at 3:00






I don't think you can. There might be similarities when using similar motherboards with similar ports. I can't say for sure. You can always add the kernel parameter net.ifnames=0 which keeps the old names... eth0, etc.
– heynnema
Dec 2 at 3:00












1 Answer
1






active

oldest

votes

















up vote
0
down vote













While I don't know why they are the ensXX format, if you want to disable them to have consistent naming across servers and get the legacy ethX, you'll want to set the net.ifnames=0 biosdevname=0 kernel boot arguments in GRUB or your bootloader in general.






share|improve this answer





















  • I know how to do that, and I appreciate the information. However, my questions is: How would I know what that ### (or ##) is going to be before the system removes eth0 and creates ens###?
    – user3158465
    Dec 2 at 1:07










  • @user3158465 From my experience, it seems to allocate them incrementally, and never reassigns them to another NIC (perhaps based on MAC address). In that, it provides consistency of configuration across swapped NICs, but not the same configuration for all NICs. This is just a guess though.
    – JavaProphet
    Dec 2 at 5:15











Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "89"
};
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',
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%2faskubuntu.com%2fquestions%2f1097747%2fin-ubuntu-16-for-a-network-interface-ens192-where-does-the-192-come-from%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








up vote
0
down vote













While I don't know why they are the ensXX format, if you want to disable them to have consistent naming across servers and get the legacy ethX, you'll want to set the net.ifnames=0 biosdevname=0 kernel boot arguments in GRUB or your bootloader in general.






share|improve this answer





















  • I know how to do that, and I appreciate the information. However, my questions is: How would I know what that ### (or ##) is going to be before the system removes eth0 and creates ens###?
    – user3158465
    Dec 2 at 1:07










  • @user3158465 From my experience, it seems to allocate them incrementally, and never reassigns them to another NIC (perhaps based on MAC address). In that, it provides consistency of configuration across swapped NICs, but not the same configuration for all NICs. This is just a guess though.
    – JavaProphet
    Dec 2 at 5:15















up vote
0
down vote













While I don't know why they are the ensXX format, if you want to disable them to have consistent naming across servers and get the legacy ethX, you'll want to set the net.ifnames=0 biosdevname=0 kernel boot arguments in GRUB or your bootloader in general.






share|improve this answer





















  • I know how to do that, and I appreciate the information. However, my questions is: How would I know what that ### (or ##) is going to be before the system removes eth0 and creates ens###?
    – user3158465
    Dec 2 at 1:07










  • @user3158465 From my experience, it seems to allocate them incrementally, and never reassigns them to another NIC (perhaps based on MAC address). In that, it provides consistency of configuration across swapped NICs, but not the same configuration for all NICs. This is just a guess though.
    – JavaProphet
    Dec 2 at 5:15













up vote
0
down vote










up vote
0
down vote









While I don't know why they are the ensXX format, if you want to disable them to have consistent naming across servers and get the legacy ethX, you'll want to set the net.ifnames=0 biosdevname=0 kernel boot arguments in GRUB or your bootloader in general.






share|improve this answer












While I don't know why they are the ensXX format, if you want to disable them to have consistent naming across servers and get the legacy ethX, you'll want to set the net.ifnames=0 biosdevname=0 kernel boot arguments in GRUB or your bootloader in general.







share|improve this answer












share|improve this answer



share|improve this answer










answered Dec 1 at 21:08









JavaProphet

1285




1285












  • I know how to do that, and I appreciate the information. However, my questions is: How would I know what that ### (or ##) is going to be before the system removes eth0 and creates ens###?
    – user3158465
    Dec 2 at 1:07










  • @user3158465 From my experience, it seems to allocate them incrementally, and never reassigns them to another NIC (perhaps based on MAC address). In that, it provides consistency of configuration across swapped NICs, but not the same configuration for all NICs. This is just a guess though.
    – JavaProphet
    Dec 2 at 5:15


















  • I know how to do that, and I appreciate the information. However, my questions is: How would I know what that ### (or ##) is going to be before the system removes eth0 and creates ens###?
    – user3158465
    Dec 2 at 1:07










  • @user3158465 From my experience, it seems to allocate them incrementally, and never reassigns them to another NIC (perhaps based on MAC address). In that, it provides consistency of configuration across swapped NICs, but not the same configuration for all NICs. This is just a guess though.
    – JavaProphet
    Dec 2 at 5:15
















I know how to do that, and I appreciate the information. However, my questions is: How would I know what that ### (or ##) is going to be before the system removes eth0 and creates ens###?
– user3158465
Dec 2 at 1:07




I know how to do that, and I appreciate the information. However, my questions is: How would I know what that ### (or ##) is going to be before the system removes eth0 and creates ens###?
– user3158465
Dec 2 at 1:07












@user3158465 From my experience, it seems to allocate them incrementally, and never reassigns them to another NIC (perhaps based on MAC address). In that, it provides consistency of configuration across swapped NICs, but not the same configuration for all NICs. This is just a guess though.
– JavaProphet
Dec 2 at 5:15




@user3158465 From my experience, it seems to allocate them incrementally, and never reassigns them to another NIC (perhaps based on MAC address). In that, it provides consistency of configuration across swapped NICs, but not the same configuration for all NICs. This is just a guess though.
– JavaProphet
Dec 2 at 5:15


















draft saved

draft discarded




















































Thanks for contributing an answer to Ask Ubuntu!


  • 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.





Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


Please pay close attention to the following guidance:


  • 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%2faskubuntu.com%2fquestions%2f1097747%2fin-ubuntu-16-for-a-network-interface-ens192-where-does-the-192-come-from%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

Quarter-circle Tiles

build a pushdown automaton that recognizes the reverse language of a given pushdown automaton?

Mont Emei