跟我一起探索Neutron (3) - 创建网络代码分析 1

1. 概述

创建网络(本文以创建 vxlan 为例分析)一般过程:

创建网络(指定网络名称 net1)  => 创建子网(指定网络名称 net1-sub、dns、网关、CIDR 等)

# openstack network create net1

# openstack subnet create --network net1 --dns-nameserver 8.8.4.4 --gateway 172.16.1.1 --subnet-range 172.16.1.0/24 net1-sub

附(复习一下子网相关概念,参考《计算机网络》):

IP 地址

Internet 上的每台主机和路由器都有 IP 地址,IP地址包含网络号和主机号

-- 32位长

-- 它引用的是一个网络接口

-- 点分十进制标记法表示,即4个字节中的每个字节用十进制表示

-- 值 0(0.0.0.0)和 -1(255.255.255.255)具有特殊含义,0 表示当前主机,1 被用作广播,表示该网络中的所有主机

-- 127.x.x.x 形式的地址保留用作回环测试

子网

允许将一个网络分成多个部分共内部使用,网络的各个部分称为子网

-- 从IP地址的主机号拿出一些位作为子网号

子网掩码

代表 网络+子网号主机号 之间的分割方案

-- 点分十进制表示,或者 “/ 网络+子网 的位数”,比如,22位长的子网掩码:255.255.252.0, /22

-- IP 地址与子网掩码做布尔与操作,可以消除主机号

CIDR(Classes InterDomain Routing,无类别域间路由)

将可用的 IP 地址以可变大小块的方式进行分配,而不管它们的所属类别

-- 路由转发规则:扫描路由表(IP 地址,子网掩码,输出线路),将掩码去掩目标 IP 地址,再与表项中的网络号比较,使用掩码最长的表项

例子:

# 首地址 末地址 地址个数 CIDR表示
1 194.24.0.0 194.24.7.255 2048 192.24.0.0/21
2 194.24.8.0 194.24.11.255 1024 192.24.8.0/22

子网1:11000010 00011000 00000|000 00000000

子网2:11000010 00011000 000010|00 00000000

其中,| 右边是主机号

NAT(Network Address Translation,网络地址转换)

-- 为一个组织(如一个公司)分配一个或少量 IP 地址,来传输 Internet 流量

-- 在组织内部,每台计算机的网络接口有唯一 IP 地址,来传输内部流量

-- 三段 IP 地址范围被申明为私有地址,组织内部可随意使用,这些地址不能出现在 Internet 上

    10.0.0.0 - 10.255.255.255 /8  (16777216 个主机地址)

    172.16.0.0 - 172.31.255.255 /12 (1048576 个主机地址)

    192.168.0.0 - 192.168.255.255 /16 (65536 个主机地址)

猜你喜欢

转载自www.cnblogs.com/yuanyuede/p/12886441.html