
В настоящее время я застрял, пытаясь пометить интерфейсы для дополнительных IP-адресов, которые я добавляю к интерфейсу. Допустим, интерфейс — eth0 ( $IFACE
), тогда $ADDRFAM="inet"
я могу добавить адрес IPv4 к помеченному псевдониму, eth0
например так:
ip -f $ADDRFAM addr add 10.0.0.1 dev $IFACE:test label $IFACE:test
что переводится как
ip -f inet addr add 10.0.0.1/32 dev eth0:test label eth0:test
где -f inet
, т. е. IPv4, подразумевается и может быть опущен.
Беглая проверка ifconfig
урожайности:
eth0:test Link encap:Ethernet HWaddr AA:BB:CC:DD:EE:FF
inet addr:10.0.0.1 Bcast:0.0.0.0 Mask:255.255.255.255
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Попробуем что-то подобное с IPv6 ( $ADDRFAM="inet6"
):
ip -f $ADDRFAM addr add fdbf:98fc:66a5:de67::1/128 dev $IFACE:test label $IFACE:test
который расширяется до
ip -f inet6 addr add fdbf:98fc:66a5:de67::1/128 dev eth0:test label eth0:test
указывает на отсутствие сбоя, но и не дает ожидаемого результата:
eth0 Link encap:Ethernet HWaddr AA:BB:CC:DD:EE:FF
[...]
inet6 addr: fdbf:98fc:66a5:de67::1/128 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5641 errors:0 dropped:0 overruns:0 frame:0
TX packets:5483 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:792232 (792.2 KB) TX bytes:861177 (861.1 KB)
eth0:test Link encap:Ethernet HWaddr AA:BB:CC:DD:EE:FF
inet addr:10.0.0.1 Bcast:0.0.0.0 Mask:255.255.255.255
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Что дает? Почему маркировка не дает ожидаемого эффекта от указания адреса под eth0:test
?
Для сравнения, соответствующие строки ip addr
выглядят так:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
[...]
inet 10.0.0.1/32 scope global eth0:test
valid_lft forever preferred_lft forever
[...]
inet6 fdbf:98fc:66a5:de67::1/128 scope global
valid_lft forever preferred_lft forever
решение1
Я понимаю, что этот ответ предназначен для разных версий NIX, но я попробую еще раз и посмотрю, поможет ли это.
В. Как добавить несколько адресов IPv6 к eth0 в Red Hat / Fedora / RHEL / CentOS Linux для виртуального хостинга?
A. Есть два способа добавить сетевые псевдонимы в системе Red Hat / CentOS Linux. Вам нужно отредактировать любой из следующих файлов, чтобы добавить сетевой псевдоним IPv6.
/etc/rc.local - Use ifconfig command and shell loop.
/etc/sysconfig/network-scripts/ifcfg-eth0 - Set special variable called IPV6ADDR_SECONDARIES for eth0 virtual hosting (network alias).
Сначала настройте IP-адрес основного сервера IPv6 и маршрутизатор по умолчанию. После того, как базовое подключение IPv6 установлено, вы можете настроить псевдонимы для NIC. /etc/rc.local configuration
Чтобы добавить 2607:f0d0:1002:11::10 к 2607:f0d0:1002:11::50 (всего 40) виртуальных псевдонимов, откройте файл /etc/rc.local и введите:
vi /etc/rc.local
Добавьте следующий код:
Псевдоним IP
для ip в диапазоне {10..40}; выполните /sbin/ifconfig eth0 inet6 add 2607:f0d0:1002:11::${ip}/64; готово
Вы можете ввести ту же команду в командной строке, чтобы немедленно активировать сетевые псевдонимы. Или создать скрипт оболочки и вызвать его из самого /etc/rc.local:
!/bin/баш
INETP="2607:f0d0:1002:11::" PRE="64" START=2 END=200 INT_IF="eth0" IFCONFIG=/sbin/ifconfig echo -n "Добавление псевдонима IPv6..." for i in {$START..$END} do $IFCONFIG $INT_IF inet6 add ${INETP}${i}/${PRE} done echo "Готово!"
конфигурация стиля sysv
Откройте файл конфигурации сетевого интерфейса, введите:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
Добавьте список вторичных адресов IPv6 к следующему коду (задайте 5 псевдонимов):
IPV6ADDR_SECONDARIES="2607:f0d0:1002:11::10/64 \ 2607:f0d0:1002:11::11/64 \ 2607:f0d0:1002:11::12/64 \ 2607:f0d0:1002:11::13/64 \ 2607:f0d0:1002:11::14/64"
Сохраните и закройте файл. Перезапустите сеть:
/etc/init.d/network перезапустить
Таким образом, похоже, что адрес IPV6 сам по себе является псевдонимом.
источник:http://www.cyberciti.biz/faq/redhat-centos-rhel-fedora-linux-add-multiple-ip-samenic/