导读 | 在日常开发和生产环境中经常需要将OpenStack虚拟机配置一个静态Ip,但配置完成后发现外面无法访问。原因是openstack每个端口默认只允许一个Ip的数据报文通过。下面介绍如何配置openstack使虚拟机静态IP地址能访问。 |
1、查找你要修改ip地址的网卡id,本文修改ip地址为192.168.111.11的网卡:
[root@node-1 ~]# neutron port-list
2、允许ip地址为192.168.111.12通过
[root@node-1 ~]# neutron port-update 83cfe62e-b9bc-4b77-8938-10d8f45d836c --allowed-address-pairs type=dict list=true ip_address=192.168.111.12
3、进入mysql数据库,修改数据
mysql> use neutron; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> select * from ipallocations where port_id='83cfe62e-b9bc-4b77-8938-10d8f45d836c'; 该port_id是之前查找的网卡id +--------------------------------------+----------------+--------------------------------------+--------------------------------------+ | port_id | ip_address | subnet_id | network_id | +--------------------------------------+----------------+--------------------------------------+--------------------------------------+ | 83cfe62e-b9bc-4b77-8938-10d8f45d836c | 192.168.111.11 | 17c87ec0-a4f6-4d55-9947-2e8c9c7f1b65 | 28fcbb79-629b-4031-9323-b6acfa620aac | +--------------------------------------+----------------+--------------------------------------+--------------------------------------+ 1 row in set (0.00 sec)
编辑port_id为 83cfe62e-b9bc-4b77-8938-10d8f45d836c 的ip地址为192.168.111.12
mysql> update ipallocations set ip_address='192.168.111.12' where port_id='83cfe62e-b9bc-4b77-8938-10d8f45d836c'; Query OK, 1 row affected (0.02 sec) Rows matched: 1 Changed: 1 Warnings: 0
查看一下port_id为83cfe62e-b9bc-4b77-8938-10d8f45d836c的地址是否变更了:
4、进入虚拟机修改ip地址就可以和外网通信了
本文原创地址:http://www.linuxprobe.com/openstack-vm-ip.html