IP地址
它们可唯一标识 IP 网络中的每台设备 每台主机(计算机、网络设备、外围设备)必须具有唯 一的地址
IP地址由两部分组成:
网络ID: 标识网络 每个网段分配一个网络ID
主机 ID: 标识单个主机 由组织分配给各设备
IP 地址分类
A类: 0 000 0000 - 0 111 1111:
1-127
网络数:126, 127
每个网络中的主机数:2^24-2
默认子网掩码:255.0.0.0
私网地址:10.0.0.0
B类: 10 00 0000 - 10 11 1111:
128-191
网络数:2^14
每个网络中的主机数:2^16-2
默认子网掩码:255.255.0.0
私网地址:172.16.0.0-172.31.0.0
C类: 110 0 0000 - 110 1 1111:
192-223
网络数:2^21
每个网络中的主机数:2^8-2
默认子网掩码:255.255.255.0
私网地址:192.168.0.0-192.168.255.0
D类:组播 1110 0000 - 1110 1111:
224-239
E类:
240-255
公有地址
私有地址
A类
10.0.0.0到10.255.255.255
B类
172.16.0.0到172.31.255.255
C类
192.168.0.0到192.168.255.255
特殊地质
0.0.0.0
0.0.0.0不是一个真正意义上的IP地址。它表示一个集合:所有不清楚的主 机和目的网络。
255.255.255.255
限制广播地址。对本机来说,这个地址指本网段内(同一广播域)的所有主机
127.0.0.1~127.255.255.254
本机回环地址,主要用于测试。在传输介质上永远不应该出现目的地址为 “127.0.0.1”的 数据包。
224.0.0.0到239.255.255.255
组播地址,224.0.0.1特指所有主机,224.0.0.2特指所有路由器。 224.0.0.5指OSPF 路由器,地址多用于一些特定的程序以及多媒体程序
169.254.x.x
如果Windows主机使用了DHCP自动分配IP地址,而又无法从DHCP服务器获 取地址,系统会为主机分配这样地址。
保留地址
广播地址 网络 1111111111111111
网络地址 网络 0000000000000000
子网掩码
高位为1 低位为0
有子网的子网络掩码
子网掩码的八位
128 64 32 16 8 4 2 1
1 1 1 1 1 1 1 1 255
1 1 1 1 1 1 1 0 254
1 1 1 1 1 1 0 0 252
1 1 1 1 1 0 0 0 248
1 1 1 1 0 0 0 0 240
1 1 1 0 0 0 0 0 224
1 1 0 0 0 0 0 0 192
1 0 0 0 0 0 0 0 128
0 0 0 0 0 0 0 0
优化IP地址分配
Before Supernetting 超网
跨网络通信
跨网络通信:路由
路由分类:
主机路由
网络路由
默认路由
动态主机配置协议DHCP
基本网络配置
将Linux主机接入到网络,需要配置网络相关设置。
一般包括如下内容:
主机名
IP/mask
路由:
默认网关
DNS服务器
主DNS服务器
次DNS服务器
第三DNS服务器
网络配置文件
IP、MASK、GW、DNS相关配置文件:
/etc/sysconfig/network-scripts/ifcfg-IFACE
路由相关的配置文件:
/etc/sysconfig/network-scripts/route-IFACE
/etc/sysconfig/network-scripts/ifcfg-IFACE:
说明参考/usr/share/doc/initscripts-9.49.30/sysconfig.txt
DEVICE:
此配置文件应用到的设备
HWADDR:
对应的设备的MAC地址
BOOTPROTO:
激活此设备时使用的地址配置协议,常 用的dhcp, static, none, bootp
NM_CONTROLLED:NM是NetworkManager的简写,
此网卡是否接受NM控制;建议CentOS6为“no”
ONBOOT:
在系统引导时是否激活此设备
TYPE:
接口类型;常见有的Ethernet, Bridge
UUID:
设备的惟一标识
IPADDR:
指明IP地址
NETMASK:
子网掩码
GATEWAY:
默认网关
DNS1:
第一个DNS服务器指向
DNS2:
第二个DNS服务器指向
USERCTL:
普通用户是否可控制此设备
PEERDNS:
如果BOOTPROTO的值为“dhcp”,是否允许
dhcp server分配的dns服务器指向信息直接覆盖至 /etc/resolv.conf文件中
/etc/sysconfig/network-scripts/route-IFACE
注意:需service network restart 生效
两种风格:
(1) TARGET via GW
(2) 每三行定义一条路由
ADDRESS#=TARGET
NETMASK#=mask
GATEWAY#=GW
网卡别名
对虚拟主机有用
将多个IP地址绑定到一个NIC上
eth0:1
eth0:2
eth0:3
ifconfig命令:
ifconfig eth0:0 192.168.1.100/24 up
ip命令:
ip addr add 172.16.1.2/16 dev eth0
ip addr add 172.16.1.1/16 dev eth0 label eth0:0
ip addr del 172.16.1.1/16 dev eth0 label eth0:0
ip addr flush dev eth0 label eth0:0
网络接口识别并命名相关的udev配置文件:
/etc/udev/rules.d/70-persistent-net.rules
卸载网卡驱动:
modprobe -r e1000
装载网卡驱动:
modprobe e1000
网络接口配置-bonding
Bonding 就是将多块网卡绑定同一IP地址对外提供服务,可以实现高 可用或者负载均衡。当然,直接给两块网卡设置同一IP地址 是不可能的。通过bonding,虚拟一块网卡对外提供连接, 物理网卡的被修改为相同的MAC地址
Bonding的工作模式
Mode 0 (balance-rr) 轮转(Round-robin)策略:从头到尾顺序的在每一个slave 接口上面发送数据包。本模式提供负载均衡和容错的能力
Mode 1 (active-backup) 活动-备份(主备)策略:在绑定中,只有一个slave被激活。 当且仅当活动的slave接口失败时才会激活其他slave。为了 避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上 可见
Mode 3 (broadcast) 广播策略:在所有的slave接口上传送所有的报文。本模式提供 容错能力。
Bonding配置
创建bonding设备的配置文件
/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
BONDING_OPTS= “miimon=100 mode=0”
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
miimon 是用来进行链路监测的。如果miimon=100,那么系 统每100ms 监测一次链路连接状态,如果有一条线路不通 就转入另一条线路
查看bond0状态:
/proc/net/bonding/bond
关于bonding的详细配置请参照
/usr/share/doc/kernel-docversion/Documentation/networking/bonding.txt