Linux network interface aliases

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.

Читайте также:  Виртуальный ip адрес линукс

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.

Читайте также:  Bash linux регулярные выражения

Источник

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.

Читайте также:  Система резервного копирования данных linux

Источник

Дополнительный ip для интерфейса (IP alias) в Linux

network-logo

Сегодня рассмотрим как привязать несколько 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.

dns_bind9

Начиная с сентября 2017 года удостоверяющим центрам предписано обязательно проверять CAA-записи в DNS перед генерацией сертификата

Сегодня установим и настроим наш файловый сервер Samba на Ubuntu Server 20.04. Расшарим директории для нашего сервера и установим на Читать

linux-logo

В этой статье я вам расскажу как изменить hostname в Debian/Ubuntu (обычно имя компьютера в сети). Существует два способа изменения Читать

network-logo

В этой статье рассмотрим пример как можно переименовать сетевые интерфейсы в дистрибутивах Linux. После обновления systemd (частью которого является udev) Читать

Источник

Оцените статью
Adblock
detector