- How to add an alternative name for the interface?
- 5 Answers 5
- Linux network interface aliases
- Добавить alias ip в Linux через утилиту ifconfig
- Удалить alias ip в Linux через утилиту ifconfig
- Добавление alias ip в Linux Mint, Debian, Ubuntu через файл interfaces
- How do I add an additional IP address to an interface in Ubuntu 14
- 4 Answers 4
- Дополнительный ip для интерфейса (IP alias) в Linux
- Установка алиас на сетевой интерфейс enp0s3 с использованием утилиты ifconfig.
- Удалить alias ip-адреса в Linux через утилиту ifconfig
- Установка алиас на сетевой интерфейс enp0s3 с использованием файла конфигурации.
How to add an alternative name for the interface?
@muru, as an the actual solution I’ll probably leave some comments in my iptables rules to then grep for the comment to get the right interface name.
5 Answers 5
You might want to take a look at the new iproute2 network interface alternative name feature ( ip link altname ). Note that the command syntax seems to have changed since that article. For example:
ip link property add dev eth0 altname someothername
Note that this is very new, you will need a recent version of iproute2 for it to work ( v5.4.0 which came out on 2019-11-25, if I’m reading the git log right).
@Haris Just like every other ip command, the answer is no. You will have to persist the config using your mechanism of choice.
@EtienneDechamps do you have any suggestions on what mechanisms to use to get the altname to persist across reboots? i am failing to figure this out for any tool which seems like it might be capable of doing so (network-scripts, udev, systemd-networkd, NetworkManager, etc.)
alias NAME give the device a symbolic name for easy reference.
Example giving an alias to the lo interface:
$ sudo ip link set lo alias mycustomaliasforlo $ ip link show lo 1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 alias mycustomaliasforlo
However, note that this only creates a symbolic reference, meaning you cannot use this alias as a real device name. For example, the following will fail:
$ ip link show mycustomaliasforlo Device "mycustomaliasforlo" does not exist.
Changing the nic name on Ubuntu 16 by reverting to udev rules.
Software: Fresh install of Ubuntu 16.04.3 server with sshd in virtual machine. Not updated
How I got here:
Could not get any of the systemd instructions to work. I looks like systemd is being used, but no joy
network-manager is not installed, so no interference from it.
Stop systemd’s Predictable Network Interface Names thingy by adding net.ifnames=0 to kernel command line.
GRUB_CMDLINE_LINUX="net.ifnames=0"
update grub with new info:
sudo grub-mkconfig -o /boot/grub/grub.cfg
I have seen where the value biosdevname=0 was added to the kernel command line in addition to net.ifnames=0 . This setup did not require it.
Assign a new name using udev rules by creating a new rule file.
sudo vi /etc/udev/rules.d/10-myCustom-net.rules
SUBSYSTEM==»net», ACTION==»add», DRIVERS==»?*», ATTR==»08:00:27:f3:79:59″, KERNEL==»eth*», NAME
adjust the MAC address and name for your system.
Removed ATTR==»0x0″ and ATTR==»1″ from my Ubuntu 14 template.
Some say to remove KERNEL==»eth*» or the entire line is ignored. This was not the case in this setup.
If you ‘lose’ the MAC address like I did because I rebooted before this step, does not show with ifconfig, go find it in /sys/class/net/assignedName/address . BTW: this system renamed it eth0, cat /sys/class/net/eth0/address
/etc/udev/rules.d/70-persistent-net.rules was the file automatically created in
Assign the new interface name an address
sudo vi /etc/network/interfaces
auto test0 iface test0 inet static address 192.168.2.202 netmask 255.255.255.0
reboot (its just easier for most of us)
As always verify all file locations for your system before executing any commands.
Linux network interface aliases
На днях появилась задача привязать несколько ip-адресов к одному сетевому интерфейсу, без использования vlan, т.е. создать несколько виртуальных, еще их называют «alias», ip-адресов. Попробуем разобраться, как это сделать.
Данная задача решается в ОС Linux (Linux Mint, Debian, Ubuntu, xUbuntu) двумя способами: использование утилиты «ifconfig» и редактирование файла «/etc/network/interfaces».
Добавить alias ip в Linux через утилиту ifconfig
Рассмотрим способ добавления дополнительного ip-адреса на сетевой интерфейс «eth0» с использованием утилиты «ifconfig».
Добавим новые виртуальньные «alias» ip-адреса, которые будут привязаны к sub-интерфейсам «eth0:0» и «eth0:1» следующими командами:
sudo ifconfig eth0:0 192.168.1.100 netmask 255.255.255.224 up sudo ifconfig eth0:1 192.168.0.100 up ifconfig -a eth0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX inet addr:192.168.100.105 Bcast:192.168.100.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:692 errors:0 dropped:0 overruns:0 frame:0 TX packets:8729 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:60660 (60.6 KB) TX bytes:1262278 (1.2 MB) eth0:0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX inet addr:192.168.1.100 Bcast:192.168.0.127 Mask:255.255.255.224 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 eth0:1 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX inet addr:192.168.0.100 Bcast:192.168.0.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
В выводе команды «ifconfig -a» мы видим, что появились два sub-интерфейса «eth0:0» и «eth0:1» с ip-адресами.
Замечание: после перезагрузки добавленные виртуальные «alias» ip-адреса через команду «ifconfig» слетят.
Удалить alias ip в Linux через утилиту ifconfig
Для удаления ранее созданного sub-интерфейса «eth0:0» воспользуемся следующей командой:
Добавление alias ip в Linux Mint, Debian, Ubuntu через файл interfaces
Для того, чтобы дополнительные адреса сохранялись после перезагрузки системы, необходимо добавить в файл «/etc/network/interfaces» следующие строки:
#ADD IP ALIAS to sub-interface eth0:1 auto eth0:0 iface eth0:0 inet static address 192.168.1.100 netmask 255.255.255.224 #ADD IP ALIAS to sub-interface eth0:1 auto eth0:1 iface eth0:1 inet static address 192.168.0.100 netmask 255.255.255.0
Теперь при загрузке системы sub-интрефейсы eth0:0 и eth0:1 будут автоматически добавлены.
Вот и все. Аналогичным образом можно добавить и другие виртуальные ip-адреса на сетевую карту в ОС Linux Mint, Debian, Ubuntu.
How do I add an additional IP address to an interface in Ubuntu 14
I want to have the wired interface simultaneously obtain a DHCP address, and also alias a fixed address so I can communicate with a device with a fixed IP address on a different subnet over the same link. When searching for IP address aliasing in Ubuntu, I found this article How do I add interface aliases using Network Manager GUI?. Unfortunately, the Edit Connections GUI in Ubuntu 14 does not have the «additional addresses» button. Where has this functionality moved?
I have updated that answer with another screenshot, see if it helps. But at any rate, I don’t think the GUI allows you to have a DHCP and a static address at the same time — multiple static addresses are fine.
Correct — I tried setting it to manual, adding my static address and switching back to DHCP. Doing so deletes any manual addresses.
4 Answers 4
Skip the gui and do it via command line.
The following link provides detailed information on how to create the alias on a temporary basis, as well as how to edit the interfaces file to make the change permanent.
Information from site in case of site death:
You can use ifconfig command to configure a network interface and alias. For example:
To setup eth0:0 alias type the following command as the root user:
# ifconfig eth0:0 192.168.1.6 up
Verify alias is up and running using following command:
# ifconfig -a # ping 192.168.1.6
However, if you reboot the system you will lost all your alias. To make it permanent you need to add it network configuration file.
Append the following to the file (This is in addition to existing information, not a replacement for it)
auto eth0:1 iface eth0:1 inet static name Ethernet alias LAN card address 192.168.1.7 netmask 255.255.255.0 broadcast 192.168.1.255 network 192.168.1.0
Save and close the file. Restart the network:
# /etc/init.d/networking restart
Thanks! the «ifconfig eth0:0 192.168.1.6 up» command works great. I don’t need it to persist, so that is a perfect solution.
Just note: ip utility is now recommended way to manupulate interfaces ( serverfault.com/a/458639/115256 ). Here’s the HowTo: askubuntu.com/a/547297/53738
@Colin’tHart: you can only have one «default gateway» (there are special cases, but that is another story), so if the «main» network config already have a gateway, you should not put any in this alias. If the «main» network have no gateway, you can add in the alias the gateway, specially if it is related to this ip range
In order to add an address temporarily use ip :
ip a add 192.168.178.2/24 dev enx0050b60c19af
For example to install OpenWRT on some old devices:
I just learned a trick from my colleague which involve the following:
If say eth_lan0 is set as the name of your wired network and has first been configured with the IP 192.168.1.2 , say with something like netplan , you can then add an alias to connect to another internal network say with an IP with the pattern 10.42.0.x with the following:
sudo ifconfig eth_lan0:1 10.42.0.2
This assumes that the IP 10.42.0.2 has not yet been assigned to your LAN and that your host is connected to both networks, one with IP 192.168.1.x and the other with 10.42.0.x . Check if you have been successful by running ifconfig to see if the alias has been set. Then, it would be recommended to ping the hosts you are trying to connect on the two local networks to make sure everything runs as expected.
Дополнительный ip для интерфейса (IP alias) в Linux
Сегодня рассмотрим как привязать несколько ip-адресов к одному сетевому интерфейсу, без использования vlan, т.е. создать несколько виртуальных интерфейсов, еще их называют IP alias.
Данная задача решается в ОС Linux (Linux Mint, Debian, Ubuntu, xUbuntu) двумя способами: использованием утилиты ifconfig и редактированием файла etc/network/interfaces .
Установка алиас на сетевой интерфейс enp0s3 с использованием утилиты ifconfig.
Для добавления алиаса на наш интерфейс в терминале вводим команду:
ifconfig enp0s3:0 10.0.8.2 netmask 255.255.255.0 up
ifconfig enp0s3:1 10.0.7.2 up
Помните: после перезагрузки добавленные виртуальные alias ip-адреса через команду ifconfig слетят.
Удалить alias ip-адреса в Linux через утилиту ifconfig
Для удаления ранее созданного алиас интерфейса enp0s3:0 воспользуемся следующей командой:
sudo ifconfig enp0s3:0 down
Установка алиас на сетевой интерфейс enp0s3 с использованием файла конфигурации.
Для добавления алиас IP-адресов с использованием файла конфигурации, откроем файл interfaces
sudo nano /etc/network/interfaces
Внесём наши дополнительные IP-адреса для интерфейса enp0s3
auto enp0s3:0
iface enp0s3:0 inet static
address 10.0.8.2
netmask 255.255.255.0
broadcast 10.0.8.255
network 10.0.8.0
auto enp0s3:1
iface enp0s3:1 inet static
address 10.0.7.2
netmask 255.255.255.0
broadcast 10.0.8.255
network 10.0.8.0
Теперь при загрузке системы интерфейсы enp0s3:0 и enp0s3:1 будут автоматически добавлены.
Вот и все. Аналогичным образом можно добавить и другие виртуальные ip-адреса на сетевую карту в ОС Linux Mint, Debian, Ubuntu.
Если есть вопросы, то пишем в комментариях.
Также можете вступить в Телеграм канал, ВКонтакте или подписаться на Twitter. Ссылки в шапке страницы.
Заранее всем спасибо.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Начиная с сентября 2017 года удостоверяющим центрам предписано обязательно проверять CAA-записи в DNS перед генерацией сертификата
Сегодня установим и настроим наш файловый сервер Samba на Ubuntu Server 20.04. Расшарим директории для нашего сервера и установим на Читать
В этой статье я вам расскажу как изменить hostname в Debian/Ubuntu (обычно имя компьютера в сети). Существует два способа изменения Читать
В этой статье рассмотрим пример как можно переименовать сетевые интерфейсы в дистрибутивах Linux. После обновления systemd (частью которого является udev) Читать