這一篇博客主要是針對自己的網絡部署的詳細講解說明(僅供參考):
一.floating ip 的設置
我這裏因爲只有一個公網ip,不能形成一個可用的floating ip段,爲了使我的floating ip段爲203.0.113.0/24。採用了兩個路由器來實現floating ip對公網映射。
- 整體設置如圖:
- 具體設置
nat路由多網段nat:
路由表設置:
普通路由WAN口設置:
普通路由LAN口設置:
普通路由DHCP服務設置:
普通路由路由表設置:
二.網卡設置
- 開始時網絡節點的外網網卡eth2的設置如下:
auto eth2
iface eth2 inet static
address 203.0.113.52
masknet 255.255.255.0
gateway 203.0.113.1
dns-nameservers 8.8.8.8
- 當添加外部網橋br-ex後:
ovs-vsctl add-port br-ex eth2
- 將eth2設置成如下:
auto eth2
iface eth2 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
down ip link set $IFACE promisc off
down ifconfig $IFACE down
- 如果想讓網絡節點配置一個通過這個網絡訪問外網的話,把eth2的IP給br-ex:
auto br-ex
iface br-ex inet static
address 203.0.113.52
masknet 255.255.255.0
gateway 203.0.113.1
dns-nameservers 8.8.8.8
三.floating ip的分配
- 從外網ext-net上分配一個可用的floating ip
neutron floatingip-create ext-net
Created a new floatingip:
+---------------------+--------------------------------------+
| Field | Value |
+---------------------+--------------------------------------+
| fixed_ip_address | |
| floating_ip_address | 203.0.113.102 |
| floating_network_id | 9bce64a3-a963-4c05-bfcd-161f708042d1 |
| id | 05e36754-e7f3-46bb-9eaa-3521623b3722 |
| port_id | |
| router_id | |
| status | DOWN |
| tenant_id | 7cf50047f8df4824bc76c2fdf66d11ec |
+---------------------+--------------------------------------+
- 將floating ip與實例綁定:
nova floating-ip-associate INSTANCE_NAME(實例名) 203.0.113.102
- 通過nova list查看實例會多了一個IP,通過控制檯可以ping通外部網路(如:baidu.com)
以上是我自己的網絡環境的配置,親測是可以的,不過這樣的話好像有一個弊端,只能內部實例上網,但外部不能ssh實例,可能是我還沒設置好,以上如果有什麼錯誤歡迎指出,謝謝。