IPv6

IPv6

Scope:

  • Cara mengaktifkan dual-stack (IPv4 dan IPv6 diaktifkan) instance.

  • Bagaimana instance dan instance menerima alamat IPv6.

  • Bagaimana instance dan instance berkomunikasi di router untuk subnet lain atau internet.

  • Bagaimana instance dan instance berinteraksi dengan layanan OpenStack lainnya.

Untuk mengaktifkan jaringan dual-stack dalam OpenStack Networking hanya membutuhkan pembuatan subnet dengan field ip_version` atur ke `` 6``, kemudian atribut IPv6 (`` ipv6_ra_mode`` dan `` ipv6_address_mode``) atur. ipv6_ra_mode dan `` ipv6_address_mode`` akan dijelaskan secara rinci pada bagian berikutnya. Akhirnya, subnet cidr perlu disediakan.

Tidak dalam lingkup

Hal tidak dalam lingkup dokumen ini meliputi:

  • Satu stack jaringan tenant IPv6

  • OpenStack mengontrol komunikasi antara server dan layanan melalui jaringan IPv6.

  • Koneksi ke API OpenStack melalui jaringan transport IPv6

  • IPv6 multicast
  • IPv6 mendukung dalam hubungannya dengan any out of tree routers, switch, layanan atau agen baik dalam faktor bentuk fisik maupun virtual.

Subnet neutron dan atribut API IPv6

Sebagai Juno, layanan OpenStack Networking (neutron) menyediakan dua atribut baru ke objek subnet, yang memungkinkan user API untuk mengkonfigurasi subnet IPv6.

Ada dua atribut IPv6:

  • ipv6_ra_mode
  • ipv6_address_mode

Atribut ini dapat diatur untuk nilai berikut:

  • slaac
  • dhcpv6-stateful
  • dhcpv6-stateless

Atribut juga dapat disetel.

IPv6 addressing

Atribut ipv6_address_mode digunakan untuk mengontrol bagaimana pengalamatan ditangani oleh OpenStack. Ada sejumlah cara yang berbeda dimana guest instance dapat memperoleh alamat IPv6, dan atribut ini memperlihatkan pilihan pilihan untuk user dari API Networking.

Router advertisements

The `` atribut ipv6_ra_mode`` digunakan untuk mengontrol advertisement router untuk subnet.

Protokol IPv6 menggunakan paket Internet Control Message Protocol (ICMPv6) sebagai cara untuk mendistribusikan informasi tentang jaringan. Paket ICMPv6 dengan jenis flag untuk 134 disebut paket “Router advertisement”, yang menyiarkan informasi tentang router dan rute yang dapat digunakan oleh guest instance untuk mengirimkan traffic jaringan.

`` ipv6_ra_mode`` digunakan untuk menentukan apakah layanan Networking harus mengirimkan paket ICMPv6, untuk subnet.

Kombinasi ipv6_ra_mode dan ipv6_address_mode

ipv6 ra mode ipv6 address mode radvd A,M,O External Router A,M,O

Deskripsi

N/S N/S Off Not Defined

Backwards compatibility dengan pre-Juno IPv6 behavior.

N/S slaac Off 1,0,0

Guest instance mendapatkan alamat IPv6 dari router non-OpenStack menggunakan SLAAC.

N/S dhcpv6-stateful Off 0,1,1

Saat ini tidak diterapkan dalam implementasi referensi.

N/S dhcpv6-stateless Off 1,0,1

Saat ini tidak diterapkan dalam implementasi referensi.

slaac N/S 1,0,0 Off

Saat ini tidak diterapkan dalam implementasi referensi.

dhcpv6-stateful N/S 0,1,1 Off

Saat ini tidak diterapkan dalam implementasi referensi.

dhcpv6-stateless N/S 1,0,1 Off

Saat ini tidak diterapkan dalam implementasi referensi.

slaac slaac 1,0,0 Off

Guest instance mendapatkan alamat IPv6 dari OpenStack yang dikelola radvd menggunakan SLAAC.

dhcpv6-stateful dhcpv6-stateful 0,1,1 Off

Guest instance memperoleh alamat IPv6 dari dnsmasq menggunakan DHCPv6 stateful dan info opsional dari dnsmasq menggunakan DHCPv6.

dhcpv6-stateless dhcpv6-stateless 1,0,1 Off

Guest instance memperoleh alamat IPv6 dari OpenStack yang dikelola radvd menggunakan SLAAC dan info opsional dari dnsmasq menggunakan DHCPv6.

slaac dhcpv6-stateful     Invalid combination.
slaac dhcpv6-stateless     Invalid combination.
dhcpv6-stateful slaac     Invalid combination.
dhcpv6-stateful dhcpv6-stateless     Invalid combination.
dhcpv6-stateless slaac     Invalid combination.
dhcpv6-stateless dhcpv6-stateful     Invalid combination.

Tenant network considerations

Dataplane

Kedua module Linux bridge dan the Open vSwitch dataplane mendukung meneruskan paket IPv6 di antara guest dan port router. Mirip dengan IPv4, tidak ada konfigurasi khusus atau setup diperlukan untuk mengaktifkan dataplane meneruskan paket secara benar dari sumber ke tujuan dengan menggunakan IPv6. Perhatikan bahwa dataplanes ini akan meneruskan Link-local Address (LLA) antara host pada jaringan yang sama saja tanpa partisipasi atau setup oleh komponen OpenStack setelah port terhubung semua dan alamat MAC dipelajari.

Addresses untuk subnets

Ada empat metode untuk subnet mendapatkan cidr nya dalam OpenStack:

  1. Tugas langsung selama pembuatan subnet melalui command line atau Horizon

  2. Mengacu subnet pool selama pembuatan subnet

Di masa depan, teknik yang berbeda dapat digunakan untuk mengalokasikan subnet ke tenant:

  1. Menggunakan klien PD untuk meminta prefix untuk subnet dari server PD

  2. Penggunaan modul IPAM eksternal untuk mengalokasikan subnet

Address modes untuk ports

Catatan

Bahwa server DHCPv6 eksternal dalam teori bisa menimpa OpenStack alamat lengkap memberikan berdasarkan alamat EUI-64, tapi itu tidak akan bijaksana seperti itu tidak akan konsisten melalui sistem.

IPv6 mendukung tiga skema pengalamatan yang berbeda untuk konfigurasi alamat dan untuk menyediakan informasi jaringan opsional.

Stateless Address Auto Configuration (SLAAC)

Alamat konfigurasi menggunakan Router Advertisement (RA).

DHCPv6-stateless

Alamat konfigurasi menggunakan RA, dan informasi opsional menggunakan DHCPv6.

DHCPv6-stateful

Konfigurasi alamat dan informasi optional menggunakan DHCPv6.

OpenStack bisa diseting sedemikian rupa sehingga OpenStack Networking langsung memberikan RA, DHCP relay dan alamat DHCPv6 dan informasi opsional untuk jaringan mereka atau ini dapat didelegasikan kepada router dan layanan eksternal didasarkan pada driver yang sedang digunakan. Ada atribut dua subnet neutron - ipv6_ra_mode dan ipv6_address_mode - yang menentukan bagaimana IPv6 dan informasi jaringan disediakan untuk tenant instances:

  • Ipv6_ra_mode: Menentukan siapa yang mengirimkan RA.

  • Ipv6_address_mode: Menentukan bagaimana instance mendapatkan alamat IPv6, gateway default, atau informasi opsional.

Untuk di atas dua atribut untuk menjadi efektif, enable_dhcp` dari objek subnet harus diatur ke True.

Menggunakan SLAAC untuk mengatasi

Bila menggunakan SLAAC, kombinasi didukung untuk ipv6_ra_mode dan ipv6_address_mode adalah sebagai berikut.

ipv6_ra_mode ipv6_address_mode Result
Not specified. SLAAC

Alamat ditugaskan menggunakan EUI-64, dan router eksternal akan digunakan untuk routing.

SLAAC SLAAC

Alamat ditugaskan menggunakan EUI-64, dan OpenStack Networking menyediakan routing.

Pengaturan ipv6_ra_mode untuk `` slaac`` akan menghasilkan router OpenStack Networking yang dikonfigurasi untuk mengirim paket RA, ketika mereka diciptakan. Hal ini menyebabkan nilai berikut yang ditetapkan untuk flag konfigurasi alamat di pesan RA:

  • Auto Configuration Flag = 1
  • Managed Configuration Flag = 0
  • Other Configuration Flag = 0

Jaringan Neutron baru atau yang sudah ada yang berisi SLAAC diaktifkan IPv6 subnet akan menghasilkan semua port neutron yang melekat pada jaringan menerima alamat IPv6. Hal ini karena ketika pesan broadcast RA dikirim keluar pada jaringan neutron, mereka diterima oleh semua IPv6 berkemampuan port pada jaringan, dan masing-masing port kemudian akan mengkonfigurasi alamat IPv6 berdasarkan informasi yang terdapat dalam paket RA. Dalam beberapa kasus, sebuah alamat IPv6 SLAAC akan ditambahkan ke port, dan juga alamat IPv4 lain dan IPv6 yang port sudah telah ditetapkan.

DHCPv6

Untuk DHCPv6-stateless, kombinasi saat ini didukung adalah sebagai berikut:

ipv6_ra_mode ipv6_address_mode Result
DHCPv6-stateless DHCPv6-stateless

Alamat dan informasi opsional menggunakan router neutron dan implementasi DHCP masing-masing.

DHCPv6-stateful DHCPv6-stateful

Alamat dan informasi opsional ditugaskan menggunakan DHCPv6.

Pengaturan DHCPv6-stateless untuk ipv6_ra_mode mengkonfigurasi router neutron dengan agen radvd untuk mengirim RA. Tabel di bawah ini menangkap nilai-nilai yang ditetapkan untuk flag konfigurasi alamat di paket RA dalam skenario ini. Demikian pula, pengaturan DHCPv6-stateless untuk ipv6_address_mode mengkonfigurasi implementasi DHCP neutron untuk memberikan informasi jaringan tambahan.

  • Auto Configuration Flag = 1
  • Managed Configuration Flag = 0
  • Other Configuration Flag = 1

Dukungan router

Perilaku router neutron untuk IPv6 berbeda dari IPv4 dalam beberapa cara.

Port router internal, yang bertindak sebagai port gateway default untuk jaringan, akan berbagi port umum untuk semua subnet IPv6 terkait dengan jaringan. Ini berarti bahwa akan ada sebuah interface router internal yang IPv6 dengan beberapa alamat IPv6 dari masing-masing subnet IPv6 yang terkait dengan jaringan dan IPv4 interface router internal yang terpisah untuk subnet IPv4. Di sisi lain, port router eksternal diperbolehkan untuk memiliki konfigurasi dual-stack dengan kedua alamat IPv4 dan IPv6 yang ditetapkan kepada mereka.

Jaringan tenant neutron ditugaskan di prefiks Global Unicast Alamat (GUA) dan alamat tidak memerlukan NAT pada router neutron port gateway eksternal untuk mengakses dunia luar. Sebagai konsekuensi dari kurangnya NAT port router eksternal tidak memerlukan GUA untuk mengirim dan menerima dengan jaringan eksternal. Ini berarti subnet prefix GUA IPv6 tidak selalu diperlukan untuk jaringan eksternal neutron. Secara default, LLA IPv6 terkait dengan port eksternal gateway dapat digunakan untuk tujuan routing. Untuk menangani skenario ini, pelaksanaan router-gateway-set API di neutron telah dimodifikasi sehingga suatu subnet IPv6 tidak diperlukan untuk jaringan eksternal yang berhubungan dengan router neutron. Alamat LLA dari router hulu dapat dipelajari dalam dua cara.

  1. Dengan tidak adanya dukungan RA hulu, flag ipv6_gateway dapat diatur dengan LLA router gerbang eksternal dalam neutron L3 file konfigurasi agen. Ini juga mensyaratkan bahwa tidak ada subnet dikaitkan dengan port tersebut.

  2. Router hulu dapat mengirim RA, dan router neutron otomatis akan belajar next-hop LA, tersedia lagi bahwa tidak ada subnet ditetapkan dan flag ipv6_gateway tidak diatur.

Flag ipv6_gateway efektif diutamakan melalui RA yang diterima dari router hulu. Jika hal ini diinginkan untuk penggunaan GUA hop berikutnya yang dicapai dengan mengalokasikan subnet ke port router eksternal dan menempatkan router hulu alamat GUA sebagai gateway untuk subnet.

Catatan

Hal itu seharusnya mungkin untuk tenant untuk berkomunikasi satu sama lain pada jaringan terisolasi (jaringan tanpa port router) menggunakan LLA dengan sedikit tidak partisipasi pada bagian dari OpenStack. Para penulis dari bagian ini belum membuktikan bahwa kebenaraan untuk semua skenario.

Fitur Neutron’s Distributed Router dan IPv6

IPv6 tidak bekerja ketika fungsi Router Virtual Didistribusikan diaktifkan, tetapi semua ingress/egress traffic adalah melalui router terpusat (oleh karena itu, tidak didistribusikan). Banyak pekerjaan yang diperlukan untuk sepenuhnya mengaktifkan fungsi ini.

Layanan canggih

VPNaaS

VPNaaS mendukung IPv6, namun dukungan di Kilo dan rilis sebelumnya akan memiliki beberapa bug yang mungkin membatasi bagaimana hal itu dapat digunakan. Lebih menyeluruh dan lengkap pengujian dan perbaikan bug akan dilakukan sebagai bagian dari rilis Liberty. Berbasis IPv6 VPN-as-a-Service dikonfigurasi mirip dengan konfigurasi IPv4. Salah satu atau kedua peer_address dan peer_cidr dapat ditetapkan sebagai alamat IPv6. Pilihan mode pengalamatan dan mode router yang dijelaskan di atas seharusnya tidak berdampak dukungan.

LBaaS

TODO

FWaaS

FWaaS memungkinkan penciptaan aturan berbasis IPv6.

NAT & Floating IPs

Pada waktu saat OpenStack Networking tidak menyediakan fasilitas apapun untuk mendukung setiap flavor NAT dengan IPv6. Tidak seperti IPv4 tidak ada dukungan embedded saat ini untuk floating IP dengan IPv6. Hal ini diasumsikan bahwa IPv6 antara tenant menggunakan GUA tanpa tumpang tindih di seluruh tenant.

Pertimbangan keamanan

Konfigurasi interface dari guest

OpenStack saat ini tidak mendukung ekstensi privasi didefinisikan oleh RFC 4941. Interface pengenal dan DUID digunakan harus langsung berasal dari MAC seperti yang dijelaskan dalam RFC 2373. The compute host tidak harus setup untuk memanfaatkan ekstensi privasi saat membuat identifier interface mereka .

Tidak ada ketentuan untuk layanan metadata berbasis IPv6 mirip dengan apa yang disediakan untuk IPv4. Dalam kasus dual stack Guests meskipun itu selalu mungkin untuk menggunakan layanan metadata IPv4 sebagai gantinya.

Tidak seperti IPv4 MTU dari jaringan tertentu dapat disampaikan dalam pesan RA dikirim oleh router dan tidak dalam pesan DHCP.

KontrolOpenStack & pertimbangan jaringan managemen

Pada rilis Kilo, upaya yang cukup telah dikerjakan untuk memastikan jaringan tenant dapat menangani IPv6 stack ganda dan transportasi IPv4 ke seluruh varietas konfigurasi dijelaskan di atas. Tingkat yang sama dari pengawasan belum berlaku untuk menjalankan jaringan kontrol OpenStack dalam konfigurasi dual stack. Demikian pula, sedikit pengawasan telah dilakukan untuk memastikan bahwa OpenStack API endpoint dapat diakses melalui jaringan IPv6. Pada saat ini, Open vSwitch (OVS) jenis terowongan - STT, VXLAN, GRE, hanya mendukung endpoint IPv4, tidak IPv6, sehingga pengerahan IPv6-only penuh tidak mungkin dengan teknologi itu.

Prefix delegation

Dari rilis Liberty dan seterusnya, OpenStack Networking mendukung IPv6 prefix delegasi. Bagian ini menjelaskan konfigurasi dan alur kerja langkah yang diperlukan untuk menggunakan IPv6 prefix delegasi untuk memberikan alokasi otomatis CIDRs subnet. Hal ini memungkinkan Anda sebagai administrator OpenStack mengandalkan server DHCPv6 eksternal (ke layanan OpenStack Networking) untuk mengelola tenant network prefixes Anda.

Catatan

Prefix delegation menjadi tersedia dalam rilis Liberty, tidak tersedia dalam rilis Kilo. Router HA dan DVR saat ini tidak didukung oleh fitur ini.

Konfigurasi OpenStack Networking untuk prefix delegation

Untuk mengaktifkan prefix delegation, mengedit file /etc/neutron/neutron.conf. Jika Anda menjalankan OpenStack Liberty, membuat perubahan berikut:

default_ipv6_subnet_pool = prefix_delegation

Sebaliknya jika Anda menjalankan OpenStack Mitaka, membuat perubahan ini:

ipv6_pd_enabled = True

Catatan

Jika Anda tidak menggunakan driver berbasis dibbler default untuk prefix delegation, maka Anda juga perlu mengatur driver dalam /etc/neutron/neutron.conf:

pd_dhcp_driver = <class path to driver>

Driver lain dari yang standar mungkin memerlukan konfigurasi tambahan, silakan lihat :ref: `extra-driver-conf `.

Ini memberitahu bahwa OpenStack Networking menggunakan mekanisme prefix delegation untuk alokasi subnet ketika user tidak menyediakan CIDR atau subnet pool id saat membuat subnet.

Requirements

Untuk menggunakan fitur ini, Anda perlu prefix delegation berkemampuan Server DHCPv6 yang dicapai dari node OpenStack Networking Anda (s). Ini bisa menjadi perangkat lunak yang berjalan pada node OpenStack Networking (s) atau di tempat lain, atau router fisik. Untuk tujuan panduan ini kita menggunakan open source Server DHCPv6, Dibbler. Dibbler tersedia di banyak manajer paket Linux, atau dari sumber di https://github.com/tomaszmrugalski/dibbler.

Bila menggunakan implementasi referensi dari OpenStack Networking driver prefix delegation, Dibbler juga harus diinstal pada node OpenStack Networking Anda (s) untuk melayani sebagai klien DHCPv6. Versi 1.0.1 atau lebih tinggi diperlukan.

Panduan ini mengasumsikan bahwa Anda menjalankan server Dibbler pada node jaringan di mana jembatan jaringan eksternal ada. Jika Anda sudah memiliki prefix delegation mampu Server DHCPv6 di tempat, maka anda dapat melewati bagian berikut.

Konfigurasi server Dibbler

Setelah menginstal Dibbler, mengedit file /etc/dibbler/server.conf:

script "/var/lib/dibbler/pd-server.sh"

iface "br-ex" {
    pd-class {
        pd-pool 2001:db8:2222::/48
        pd-length 64
    }
}

Opsi yang digunakan dalam file konfigurasi di atas adalah:

  • script Point untuk script dijalankan ketika prefix didelegasikan atau dilepaskan. Ini hanya diperlukan jika Anda ingin instance pada subnet Anda untuk memiliki akses jaringan eksternal. Lebih di bawah ini.

  • iface Nama interface jaringan yang untuk mendengarkan pesan prefix delegation.

  • pd-pool Besar prefix dari mana Anda ingin prefiks Anda didelegasikan untuk datang. Contoh yang diberikan sudah cukup jika Anda tidak memerlukan akses jaringan eksternal, jika prefix global routable yang unik diperlukan.

  • pd-length Panjang prefik yang akan didelegasikan. Ini harus menjadi 64 untuk bekerja dengan implementasi referensi OpenStack Networking saat ini.

Untuk menyediakan akses jaringan eksternal untuk kasus Anda, Server Dibbler Anda juga perlu membuat rute baru untuk setiap prefix didelegasikan. Hal ini dilakukan dengan menggunakan file script di dalam file konfigurasi di atas. Mengedit file /var/lib/dibbler/pd-server.sh:

if [ "$PREFIX1" != "" ]; then
    if [ "$1" == "add" ]; then
        sudo ip -6 route add ${PREFIX1}/64 via $REMOTE_ADDR dev $IFACE
    fi
    if [ "$1" == "delete" ]; then
        sudo ip -6 route del ${PREFIX1}/64 via $REMOTE_ADDR dev $IFACE
    fi
fi

Variabel yang digunakan dalam file script di atas adalah:

  • $PREFIX1 prefix yang ditambahkan/dihapus oleh server Dibbler.

  • `` $ 1`` Operasi yang dilakukan.

  • $REMOTE_ADDR Alamat IP dari klien Dibbler yang meminta.

  • $IFACE The interface jaringan di mana permintaan itu diterima.

Di atas adalah semua yang Anda butuhkan dalam skenario ini, tetapi lebih informasi tentang cara menginstal, mengkonfigurasi, dan menjalankan Dibbler tersedia di buku petunjuk Dibbler, di http://klub.com.pl/dhcpv6/doc/dibbler-user.pdf.

Untuk memulai server Dibbler Anda, jalankan:

# dibbler-server run

Atau untuk berjalan dalam headless mode:

# dibbler-server start

Bila menggunakan DevStack, penting untuk memulai server Anda setelah script stack.sh telah selesai untuk memastikan bahwa interface jaringan yang diperlukan telah dibuat.

Alur kerja user

Pertama, membuat jaringan dan subnet IPv6:

$ neutron net-create ipv6-pd

Created a new network:
+-----------------+--------------------------------------+
| Field           | Value                                |
+-----------------+--------------------------------------+
| admin_state_up  | True                                 |
| id              | 31ef3e85-111f-4772-8172-8e4a404a7476 |
| mtu             | 1450                                 |
| name            | ipv6-pd                              |
| router:external | False                                |
| shared          | False                                |
| status          | ACTIVE                               |
| subnets         |                                      |
| tenant_id       | 28b39bcce66e4a648f82e2362b958b60     |
+-----------------+--------------------------------------+

$ neutron subnet-create ipv6-pd --name ipv6-pd-1 --ip_version 6 \
  --ipv6_ra_mode slaac --ipv6_address_mode slaac --use_default_subnetpool

Created a new subnet:
+-------------------+--------------------------------------------------+
| Field             | Value                                            |
+-------------------+--------------------------------------------------+
| allocation_pools  | {"start": "::2", "end": "::ffff:ffff:ffff:fffe"} |
| cidr              | ::/64                                            |
| dns_nameservers   |                                                  |
| enable_dhcp       | True                                             |
| gateway_ip        | ::1                                              |
| host_routes       |                                                  |
| id                | ea139dcd-17a3-4f0a-8cca-dff8b4e03f8a             |
| ip_version        | 6                                                |
| ipv6_address_mode | slaac                                            |
| ipv6_ra_mode      | slaac                                            |
| name              | ipv6-pd-1                                        |
| network_id        | 31ef3e85-111f-4772-8172-8e4a404a7476             |
| subnetpool_id     | prefix_delegation                                |
| tenant_id         | 28b39bcce66e4a648f82e2362b958b60                 |
+-------------------+--------------------------------------------------+

Subnet pada awalnya dibuat dengan CIDR sementara sebelum hal itu dapat diberikan oleh prefix delegation. Setiap jumlah subnet dengan CIDR sementara ini bisa eksis tanpa menimbulkan error tumpang tindih. subnetpool_id secara otomatis diatur untuk prefix_delegation.

Untuk memicu proses prefix delegation, buatlah interface router antara subnet ini dan router dengan interface yang aktif pada jaringan eksternal:

$ neutron router-interface-add cb9b7a2c-0ffa-412f-989a-1e6c60e1c02f \
  ea139dcd-17a3-4f0a-8cca-dff8b4e03f8a
Added interface a7e4d663-e3fc-4b8f-909f-865c397a930e to router
cb9b7a2c-0ffa-412f-989a-1e6c60e1c02f.

Mekanisme prefix delegation kemudian mengirimkan permintaan melalui jaringan eksternal ke server prefix delegation Anda, yang menjawab dengan prefix yang didelegasikan. Subnet tersebut kemudian diperbarui dengan prefix baru, termasuk menerbitkan alamat IP baru untuk semua port:

$ neutron subnet-show ipv6-pd-1

+-------------------+-------------------------------------------------+
| Field             | Value                                           |
+-------------------+-------------------------------------------------+
| allocation_pools  | {"start": "2001:db8:2222:6977::2",              |
|                   | "end":"2001:db8:2222:6977:ffff:ffff:ffff:fffe"} |
| cidr              | 2001:db8:2222:6977::/64                         |
| dns_nameservers   |                                                 |
| enable_dhcp       | True                                            |
| gateway_ip        | 2001:db8:2222:6977::1                           |
| host_routes       |                                                 |
| id                | ea139dcd-17a3-4f0a-8cca-dff8b4e03f8a            |
| ip_version        | 6                                               |
| ipv6_address_mode | slaac                                           |
| ipv6_ra_mode      | slaac                                           |
| name              | ipv6-pd-1                                       |
| network_id        | 31ef3e85-111f-4772-8172-8e4a404a7476            |
| subnetpool_id     | prefix_delegation                               |
| tenant_id         | 28b39bcce66e4a648f82e2362b958b60                |
+-------------------+-------------------------------------------------+

Jika server prefix delegation dikonfigurasi untuk mendelegasikan prefiks routable secara global dan mempersiapkan rute, maka setiap instance dengan port pada subnet ini harus sekarang memiliki akses jaringan eksternal.

Menghapus interface router menyebabkan subnet yang akan dikembalikan ke CIDR sementara, dan semua port memiliki IP mereka diperbarui. Kontrak prefix dilepaskan dan diperpanjang secara otomatis yang diperlukan.

Referensi

Link berikut memberikan langkah besar demi langkah tutorial tentang pengaturan IPv6 dengan OpenStack: http://www.debug-all.com/?p=52

Konfigurasi tambahan

Neutron dhcpv6_pd_agent

Untuk mengaktifkan driver dhcpv6_pd_agent, mengatur pd_dhcp_driver ke dalam /etc/neutron/neutron.conf:

pd_dhcp_driver = neutron_pd_agent

Untuk memperbolehkan neutron-pd-agen berkomunikasi dengan server prefix delegation, Anda harus mengatur dimana interface jaringan menggunakan komunikasi eksternal. Dalam DevStack default untuk ini adalah br-ex:

pd_interface = br-ex

Setelah Anda menumpuk, jalankan command di bawah ini untuk memulai neutron-pd-agent:

neutron-pd-agent --config-file /etc/neutron/neutron.conf
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.