Adres alanları alt ağ havuzlarından oluşturulur. Alt ağ havuzları, adreslerin alt ağlara ayrılmasını denetleyen bir mekanizma sağlarken, adres alanları, adreslerin ağlar arasında nereye yönlendirilebileceğini ve herhangi bir iki alt ağda üst üste gelen adreslerin kullanılmasını engellediğini gösterir. Adres alanında ayrılan tüm adresler çakışmadığından, neutron yönlendiricileri, projelerinizin ağıyla harici ağ arasında NAT yapmazlar. Bir adres alanındaki adresler eşleştiği sürece, Ağ hizmeti, ağlar arasında basit bir yönlendirme gerçekleştirir.
Ağ hizmetine erişimi olan herkes kendi adres alanlarını oluşturabilir. Bununla birlikte, ağ yöneticileri, paylaşımlı adres alanları oluşturabilir ve diğer projelerin bu adres alanı içinde ağlar oluşturmasına izin verebilir.
Bir alandaki adreslere erişim, alt ağ havuzları aracılığıyla yönetilir. Alt ağ havuzları bir adres alanında oluşturulabilir veya bir adres alanına ait olacak şekilde güncellenebilir.
Alt ağ havuzlarıyla, adres alanı içinde kullanılan tüm adresler, adres alanı sahibi açısından farklıdır. Bu nedenle, havuzların farklı adrese sahip olması ve adres alanının bölümlerinin temsilciliğine izin vermesi durumunda, adres alanına birden fazla alt ağ havuzu ekleyin. Delegasyon, tüm alan boyunca adres çakışmasını engeller. Aksi takdirde, iki havuzun aynı adres aralıklarına sahip olması durumunda bir hata mesajı alırsınız.
Her yönlendirici arabirimi, ağa bağlı alt ağlara bakarak bir adres alanıyla ilişkilendirilir. Bir yönlendirici, eşleşen adres alanlarıyla harici bir ağa bağlandığında, Ağ trafiği, Ağ adresi çevirisi (NAT) olmadan güzergah yönlendirir. Yönlendirici, her arayüzden gelen tüm trafik bağlantılarını ilgili adres alanı ile işaretler. Trafiğin bir arabirimi yanlış alanda bırakması durumunda, yönlendirici trafiği engeller.
Ağ, oluşturulan veya güncellenmiş bir adres alanına ait bir alt ağ havuzundan alt ağlar içeriyorsa Mitaka sürümünden önce oluşturulan ağlar açıkça adlandırılmış adres alanları içermez. Ağ hizmeti, özel adres alanı özellikleri aracılığıyla Mitaka öncesi ağlarla geriye dönük uyumluluğu korur, böylece bu ağlar gelişmiş yönlendirme yapabilir:
Bu bölüm, ayrıcalıksız kullanıcıların NAT olmadan doğrudan harici bir ağa yönlendirmek için adres alanlarını nasıl kullanabileceklerini gösterir.
Alt ağlar sunmak için bir çift ağ oluştur:
$ openstack network create network1
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | UP |
| availability_zone_hints | |
| availability_zones | |
| created_at | 2016-12-13T23:21:01Z |
| description | |
| headers | |
| id | 1bcf3fe9-a0cb-4d88-a067-a4d7f8e635f0 |
| ipv4_address_scope | None |
| ipv6_address_scope | None |
| mtu | 1450 |
| name | network1 |
| port_security_enabled | True |
| project_id | 098429d072d34d3596c88b7dbf7e91b6 |
| provider:network_type | vxlan |
| provider:physical_network | None |
| provider:segmentation_id | 94 |
| revision_number | 3 |
| router:external | Internal |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | [] |
| updated_at | 2016-12-13T23:21:01Z |
+---------------------------+--------------------------------------+
$ openstack network create network2
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | UP |
| availability_zone_hints | |
| availability_zones | |
| created_at | 2016-12-13T23:21:45Z |
| description | |
| headers | |
| id | 6c583603-c097-4141-9c5c-288b0e49c59f |
| ipv4_address_scope | None |
| ipv6_address_scope | None |
| mtu | 1450 |
| name | network2 |
| port_security_enabled | True |
| project_id | 098429d072d34d3596c88b7dbf7e91b6 |
| provider:network_type | vxlan |
| provider:physical_network | None |
| provider:segmentation_id | 81 |
| revision_number | 3 |
| router:external | Internal |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | [] |
| updated_at | 2016-12-13T23:21:45Z |
+---------------------------+--------------------------------------+
Bir alt ağ havuzu veya bir adres alanı ile ilişkili olmayan bir alt ağ oluştur:
$ openstack subnet create --network network1 --subnet-range \
198.51.100.0/26 subnet-ip4-1
+-------------------+--------------------------------------+
| Field | Value |
+-------------------+--------------------------------------+
| allocation_pools | 198.51.100.2-198.51.100.62 |
| cidr | 198.51.100.0/26 |
| created_at | 2016-12-13T23:24:16Z |
| description | |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 198.51.100.1 |
| headers | |
| host_routes | |
| id | 66874039-d31b-4a27-85d7-14c89341bbb7 |
| ip_version | 4 |
| ipv6_address_mode | None |
| ipv6_ra_mode | None |
| name | subnet-ip4-1 |
| network_id | 1bcf3fe9-a0cb-4d88-a067-a4d7f8e635f0 |
| project_id | 098429d072d34d3596c88b7dbf7e91b6 |
| revision_number | 2 |
| service_types | |
| subnetpool_id | None |
| updated_at | 2016-12-13T23:24:16Z |
+-------------------+--------------------------------------+
$ openstack subnet create --network network1 --ipv6-ra-mode slaac \
--ipv6-address-mode slaac --ip-version 6 --subnet-range \
2001:db8:80d2:c4d3::/64 subnet-ip6-1
+-------------------+-----------------------------------------+
| Field | Value |
+-------------------+-----------------------------------------+
| allocation_pools | 2001:db8:80d2:c4d3::2-2001:db8:80d2:c4d |
| | 3:ffff:ffff:ffff:ffff |
| cidr | 2001:db8:80d2:c4d3::/64 |
| created_at | 2016-12-13T23:28:28Z |
| description | |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 2001:db8:80d2:c4d3::1 |
| headers | |
| host_routes | |
| id | a7551b23-2271-4a88-9c41-c84b048e0722 |
| ip_version | 6 |
| ipv6_address_mode | slaac |
| ipv6_ra_mode | slaac |
| name | subnet-ip6-1 |
| network_id | 1bcf3fe9-a0cb-4d88-a067-a4d7f8e635f0 |
| project_id | 098429d072d34d3596c88b7dbf7e91b6 |
| revision_number | 2 |
| service_types | |
| subnetpool_id | None |
| updated_at | 2016-12-13T23:28:28Z |
+-------------------+-----------------------------------------+
Harici bir ağdan bir adres alanı ile ilişkili bir alt ağ havuzu kullanarak bir alt ağ oluştur:
$ openstack subnet create --subnet-pool subnet-pool-ip4 \
--network network2 subnet-ip4-2
+-------------------+--------------------------------------+
| Field | Value |
+-------------------+--------------------------------------+
| allocation_pools | 203.0.113.2-203.0.113.62 |
| cidr | 203.0.113.0/26 |
| created_at | 2016-12-13T23:32:12Z |
| description | |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 203.0.113.1 |
| headers | |
| host_routes | |
| id | 12be8e8f-5871-4091-9e9e-4e0651b9677e |
| ip_version | 4 |
| ipv6_address_mode | None |
| ipv6_ra_mode | None |
| name | subnet-ip4-2 |
| network_id | 6c583603-c097-4141-9c5c-288b0e49c59f |
| project_id | 098429d072d34d3596c88b7dbf7e91b6 |
| revision_number | 2 |
| service_types | |
| subnetpool_id | d02af70b-d622-426f-8e60-ed9df2a8301f |
| updated_at | 2016-12-13T23:32:12Z |
+-------------------+--------------------------------------+
$ openstack subnet create --ip-version 6 --ipv6-ra-mode slaac \
--ipv6-address-mode slaac --subnet-pool subnet-pool-ip6 \
--network network2 subnet-ip6-2
+-------------------+--------------------------------------+
| Field | Value |
+-------------------+--------------------------------------+
| allocation_pools | 2001:db8:a583::2-2001:db8:a583:0:fff |
| | f:ffff:ffff:ffff |
| cidr | 2001:db8:a583::/64 |
| created_at | 2016-12-13T23:31:17Z |
| description | |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 2001:db8:a583::1 |
| headers | |
| host_routes | |
| id | b599c2be-e3cd-449c-ba39-3cfcc744c4be |
| ip_version | 6 |
| ipv6_address_mode | slaac |
| ipv6_ra_mode | slaac |
| name | subnet-ip6-2 |
| network_id | 6c583603-c097-4141-9c5c-288b0e49c59f |
| project_id | 098429d072d34d3596c88b7dbf7e91b6 |
| revision_number | 2 |
| service_types | |
| subnetpool_id | a59ff52b-0367-41ff-9781-6318b927dd0e |
| updated_at | 2016-12-13T23:31:17Z |
+-------------------+--------------------------------------+
Kapsamlı alt ağ havuzlarından alt ağlar oluşturarak, ağ adres alanıyla ilişkilendirilir.
$ openstack network show network2
+---------------------------+------------------------------+
| Field | Value |
+---------------------------+------------------------------+
| admin_state_up | UP |
| availability_zone_hints | |
| availability_zones | nova |
| created_at | 2016-12-13T23:21:45Z |
| description | |
| id | 6c583603-c097-4141-9c5c- |
| | 288b0e49c59f |
| ipv4_address_scope | 3193bd62-11b5-44dc- |
| | acf8-53180f21e9f2 |
| ipv6_address_scope | 28424dfc-9abd-481b- |
| | afa3-1da97a8fead7 |
| mtu | 1450 |
| name | network2 |
| port_security_enabled | True |
| project_id | 098429d072d34d3596c88b7dbf7e |
| | 91b6 |
| provider:network_type | vxlan |
| provider:physical_network | None |
| provider:segmentation_id | 81 |
| revision_number | 10 |
| router:external | Internal |
| shared | False |
| status | ACTIVE |
| subnets | 12be8e8f-5871-4091-9e9e- |
| | 4e0651b9677e, b599c2be-e3cd- |
| | 449c-ba39-3cfcc744c4be |
| tags | [] |
| updated_at | 2016-12-13T23:32:12Z |
+---------------------------+------------------------------+
Oluşturulan proje alt ağlarının her birine bir yönlendirici bağlayın, örneğin, router1
adlı bir yönlendirici kullanarak:
$ openstack router add subnet router1 subnet-ip4-1
$ openstack router add subnet router1 subnet-ip4-2
$ openstack router add subnet router1 subnet-ip6-1
$ openstack router add subnet router1 subnet-ip6-2
Bu örnek adres alanları ile ağlar arasındaki bağlanabilirliğin nasıl kontrol edileceğini gösterir.
İki sunucu başlatın network1
üzerinde instance1
ve network2
üzerinde instance2
bir yüzen IP adresinin her iki sunucu için de ilişkilendirin.
Ping’lere ve SSH’a (hem IPv4 hem de IPv6) izin vermek için güvenlik gruplarını ayarlayın:
$ openstack server list
+--------------+-----------+---------------------------------------------------------------------------+------------+
| ID | Name | Networks | Image Name |
+--------------+-----------+---------------------------------------------------------------------------+------------+
| 97e49c8e-... | instance1 | network1=2001:db8:80d2:c4d3:f816:3eff:fe52:b69f, 198.51.100.3, 203.0.113.3| cirros |
| ceba9638-... | instance2 | network2=203.0.113.3, 2001:db8:a583:0:f816:3eff:fe42:1eeb, 203.0.113.4 | centos |
+--------------+-----------+---------------------------------------------------------------------------+------------+
Adres alanına bakmaksızın, yüzen IP’lere harici ağdan ping atılabilir:
$ ping -c 1 203.0.113.3
1 packets transmitted, 1 received, 0% packet loss, time 0ms
$ ping -c 1 203.0.113.4
1 packets transmitted, 1 received, 0% packet loss, time 0ms
Şimdi instance2``ye doğrudan ping atabilirsiniz çünkü ``instance2
harici ağ ile aynı adres alanını paylaşır:
Not
BGP yönlendirme, sunucularınız için otomatik olarak statik bir rota oluşturmak için kullanılabilir.
# ip route add 203.0.113.0/26 via 203.0.113.2
$ ping -c 1 203.0.113.3
1 packets transmitted, 1 received, 0% packet loss, time 0ms
# ip route add 2001:db8:a583::/64 via 2001:db8::1
$ ping6 -c 1 2001:db8:a583:0:f816:3eff:fe42:1eeb
1 packets transmitted, 1 received, 0% packet loss, time 0ms
Doğrudan instance1
‘ye ping atamazsınız çünkü adres alanı eşleşmedi:
# ip route add 198.51.100.0/26 via 203.0.113.2
$ ping -c 1 198.51.100.3
1 packets transmitted, 0 received, 100% packet loss, time 0ms
# ip route add 2001:db8:80d2:c4d3::/64 via 2001:db8::1
$ ping6 -c 1 2001:db8:80d2:c4d3:f816:3eff:fe52:b69f
1 packets transmitted, 0 received, 100% packet loss, time 0ms
Adres alanları ağlar arasında eşleşirse, pingler ve diğer trafik yönlendirmeleri doğrudan geçer. Alanlar ağlar arasında eşleşmiyorsa, yönlendirici trafiği durdurur veya alan sınırlarını aşmak için NAT uygular.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.