Мій провайдер нещодавно почав службу подвійного стека IPv4 / IPv6. Для підключення до Інтернету IPv4 / IPv6 майже всі користувачі зазвичай використовують CPE, орендований ISP. Але я хочу використовувати свій маршрутизатор Linux замість такого CPE, тому що мій роутер має стільки ролей (безліч правил iptables і 3 інтерфейси Ethernet, http зворотний проксі, http кеш, memcached, smtp / pop сервер і проксі DNS). Я хочу дозволити, щоб це був маршрутизатор з двома стеками IPv4 / IPv6.
Мій маршрутизатор
- CentOS6.0 i686
- eth0 для WAN
- eth1,2 для локальної мережі
- ISC dhcp (версія 4.1.1), встановлена "# yum install dhcp" з CentOS-оновлених репо
- radvd (версія 1.6), встановлений "# yum install radvd" від CentOS-базової репо
- [EDIT] Причина, чому я використовую ISC dhclient, полягає в тому, що моєму маршрутизатору необхідно надіслати DHCPv6 варіант 16 (клас постачальника) у своєму запиті та запиті повідомлень, щоб отримати опцію інформації про постачальника, яка включає деяку інформацію, пов’язану з ISP ( Номер телефону SIP, адреса сервера прошивки). Я знаю, як встановити параметр 16 в ISC dhclient, але не знаю його у WIDE-dhcpv6. І я не можу знайти такі налаштування, як "id-assoc" в ISC dhclient.
Моя мета
- / 48 префікс делегований клієнту DHCPv6-PD (делегування префікса DHCPv6) (dhclient) на eth0.
- Маршрут за замовчуванням IPv6 встановлений до ISP. Я повинен розглядати локальну адресу сервера провайдера DHCPv6 як маршрут за замовчуванням.
- Одна / 64 підмережа та одна глобальна адреса (які знаходяться в делегованому префіксі) присвоюються кожному I / F локальної мережі (eth1 / eth2).
- radvd на eth1 та eth2 оголошує RA на основі призначеної / 64 підмережі.
- dhcpd6 на eth1 та eth2 оголошує додаткову мережеву інформацію (сервери імен, пошук домену та адреси sip-серверів), отриману від DHCPv6-сервера провайдера.
Моя поточна конфігурація
/ etc / sysconfig / network
NETWORKING=yes
HOSTNAME=xxx.yyy.zzz
# Enable IPv6 routing and stop accept_ra/autoconf.
IPV6FORWARDING=yes
/ etc / sysconfig / network-script / ifcfg-eth0
DEVICE="eth0"
ONBOOT=yes
TYPE=Ethernet
BOOTPROTO=none
# Enable DHCPv6-PD client.
DHCPV6C=yes
DHCPV6C_OPTIONS="-P -cf /etc/dhcp/dhclient6.conf"
# Disable make_resolv_conf function in /sbin/dhclient-script.
PEERDNS=no
/etc/dhcp/dhclient6.conf
script "/sbin/dhclient-script";
interface "eth0" {
send dhcp6.reconf-accept;
also request dhcp6.vendor-opts, dhcp6.sip-servers-names, dhcp6.sip-servers-addresses, dhcp6.sntp-servers;
}
Результат
Після "перезавантаження сервісної мережі #" клієнт DHCPv6-PD, здається, завершився успішно.
lease6 {
interface "eth0";
ia-pd xx:xx:xx:xx {
starts 1312464004;
renew 7200;
rebind 10800;
iaprefix 24xx:xxxx:xxxx::/48 {
starts 1312464004;
preferred-life 12600;
max-life 14400;
}
}
option dhcp6.client-id xx:xx:xx:xx:xx:xx:xx:xx:xx:xx;
option dhcp6.server-id xx:xx:xx:xx:xx:xx:xx:xx:xx:xx;
option dhcp6.reconf-accept ;
option dhcp6.sip-servers-addresses 24xx:xxxx:xxxx:xxxx::1;
option dhcp6.name-servers 24xx:xxxx:xxxx:xxxx::3,24xx:xxxx:xxxx:b::3;
option dhcp6.domain-search "xxx.jp.", "yyy.jp.";
option dhcp6.sntp-servers 24xx:xxxx:xxxx:xxxx::a,24xx:xxxx:xxxx:b::b;
}
Питання
DHCPv6-PD клієнт успішно делегований / 48 префіксом. Але після цього
- Як встановити маршрут за замовчуванням IPv6 у таблиці маршрутизації маршрутизатора?
- Як призначити глобальну адресу IPv6 та / 64 підмережі для кожної I / F локальної мережі (eth1 та eth2) на основі делегованого префікса?
- Як запустити radvd оголосити RA на кожному вході / виводу локальної мережі (eth1 та eth2)?
- Як запустити DHCPv6-сервер (dhcpd6) у кожній локальній мережі вводу / виводу, щоб оголосити додаткову мережеву інформацію (сервери імен, список домену та адреси sip-серверів), отриману від DHCPv6-сервера провайдера?
Моя здогадка
Згідно з "$ man dhclient" та "$ man dhclient-script", схоже , dhclient-скрипт використовується для налаштування таких параметрів, і він пропонує деякі гачки. Але тепер це не робить нічого для клієнта DHCPv6-PD.
Так, мені, можливо, доведеться писати деякі сценарії, придатні для мого середовища DHCPv6-PD, хоча я не знайомий з конфігураціями мережі IPv6. Хто-небудь дасть мені знати вищевказані налаштування в dhclient-script? [EDIT] Я хочу знати практичний сценарій dhclient.
І я хвилююся, слід звернути особливу увагу. Наприклад, оскільки кожна IPv6-адреса має переважний / дійсний термін служби, коли я присвоюю глобальну адресу IPv6 інтерфейсу локальної мережі на основі делегованого префікса, я повинен призначити не тільки IPv6-адресу, але й її термін служби, який повинен бути отриманий з делегованого Кращі / дійсні терміни префікса?
Також, можливо, доведеться перенастроювати сервер radvd та DHCPv6 на інтерфейсах локальної мережі, коли відбувається повторна конфігурація DHCPv6? Який гачок слід використовувати?
[EDIT] Коли відбудеться повторна конфігурація DHCPv6, як оголосити як нову, так і застарілу інформацію? radvd автоматично оголошує попередній префікс застарілим? Сервер DHCPv6 автоматично оголошує застарілі попередні сервери імен?