网络管理-第二篇

IP地址

IP地址

它们可唯一标识 IP 网络中的每台设备

每台主机(计算机、网络设备、外围设备)必须具有唯一的地址

IP地址由两部分组成:

网络ID:

标识网络

每个网段分配一个网络ID

主机 ID:

标识单个主机

由组织分配给各设备

MAC地址没有管理性

IP地址可管理性标识性高

子网掩码标识网络ID和主机ID

地址分类

二进制

A类地址:前八位是网络ID

1-126.x.x.x

一个A类网络主机数1600万

网段公式:

网段数=2^可变网络ID位数

一个网络的主机数量=2^主机ID位数-2

B类地址:16位网络ID,16位主机地址

128-192.x.x.x

10xxxxxx.xxxxxxxx.y.z

主机数65534

C类地址:24位网络ID,8位主机ID

192-223.x.x.x

110xxxxx.xxxxxxxx.xxxxxxxx.x

主机数:2^8-2=253

D类地址:多播

224-239.x.x.x

E类地址:保留

240-255

无类:网络ID,主机ID不确定

CIDR 无类域间路由

子网掩码(netmask):32位二进制数,以十进制显示

一个IP对应一个netmask,网络ID位数,netmask对应为1,主机位ID位数,netmask为0

A类掩码:255.0.0.0

B类掩码:255.255.0.0

C类掩码:255.255.255.0

D类和E类为特殊,没有掩码

共有IP地址

网络管理-第二篇

私有IP地址

网络管理-第二篇

子网划分:将一个大网络(主机多=主机ID位数,网络ID位数少)划分成多个小网络(主机少=主机ID位数,网络ID位数多),网络ID位向主机ID位借N位,划分成2^N个小网

公式

划分子网数=划分成2^N个(网络ID位向主机ID位借N位)

00000000 0

10000000 128

11000000 192

11100000  224

11110000  240

11111000  248

11111100  252

11111110  254

11111111  255

子网掩码和IP对位相与判断网络位

A:192.168.1.100/16

B:192.168.2.100/24

以上两个IP互qing,A能ping通B,A会以自己的掩码16位来判断两个IP,Bping不通A,B会以自己的掩码24位来判断两个IP

单臂路由:通过路由器的配置,使同一交换机的两个VLAN互联互通

网络聚合

合并超网:多个小网合并成一个大网,主机ID位向网络ID位借位

公有地址:国际分配

私有地址:自己使用

特殊地址

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服务器获取地址,系统会为主机分配这样地址。

跨网络通信:路由

路由分类:

主机路由

主机路径

网络路由

主机网段路径

默认路由

0.0.0.0

 

优先级:精度越高,优先级越高

路由表构成:

1目标:数据包发送的目标路径

2子网掩码netmask

3接口interface:本路由器的出口

4网关gateway

1)直连:不需要配置

2)非直连:下一个路由器邻近本路由器的接口地址,下一跳

网卡配置添加网关是为了添加默认路由

 

A—1 R1 2 —3 R2 4— 5 R3 6 — B

 

firefox http://www.magedu.com

 

0 dns

 

1 A判断B和A是否在一个网段

 

2 A gateway:R1 IP1

 

ARP IP1 —> MAC1

APR cache : IP1–MAC1

 

frame:dest mac:mac1 src mac:macA

ip: dest ip:IPB src ip: IPA

tcp:dest port:80 src port:xxxxx,syn

 

3 R1 查路由表

 

net B 2 IP3

ARP IP3 —> mac3

 

frame:dest mac:mac3 src mac:mac2

ip: dest ip:IPB src ip: IPA

tcp:dest port:80 src port:xxxxx,syn

 

4 R2 查路由表

 

net B 4  IP5

ARP IP5 —> mac5

 

frame:dest mac:mac5 src mac:mac4

ip: dest ip:IPB src ip: IPA

tcp:dest port:80 src port:xxxxx,syn

 

5 R3 查路由表

net B 6

ARP IPB —> macB

frame:dest mac:macB src mac:mac6

ip: dest ip:IPB src ip: IPA

tcp:dest port:80 src port:xxxxx,syn

 

基本网络配置

将Linux主机接入到网络,需要配置网络相关设置。

一般包括如下内容:

主机名

IP/netmask

路由:默认网关

DNS服务器

主DNS服务器

次DNS服务器

第三DNS服务器

Linux中主机名只具有本地意义;在Windows中计算机名具有网络功能

tcpdump  抓包工具

CentOS 6网卡名称

接口命名方式:CentOS 6

以太网:eth[0,1,2,…]

ppp:ppp[0,1,2,…]

网络接口识别并命名相关的udev配置文件:

/etc/udev/rules.d/70-persistent-net.rules

查看网卡:

dmesg |grep –i eth

ethtool -i eth0

卸载网卡驱动:

modprobe -r e1000

rmmod e1000

装载网卡驱动:

modprobe e1000

网络配置方式

静态指定:

ifconfig, route, netstat

ip: object {link, addr, route}

ip link:查看网卡状态(物理状态)

ss:查看 ssh连接的ip

tc

ifconfig [网卡名] down/up 禁用/启用网卡

ifdown:禁用网卡

ifup:启用网卡

以上两个命令局限于配置文件

system-config-network-tui,setup

配置文件

动态分配:

DHCP: Dynamic Host Configuration Protocol

route命令

路由管理命令

route -n 查看

route add 添加

route del 删除

route add [-net网络|-host仅主机] target [netmask Nm] [gw Gw] [[dev] If]

目标:192.168.1.3 网关:172.16.0.1

route add -host 192.168.1.3 gw 172.16.0.1 dev eth0

目标:192.168.0.0 网关:172.16.0.1

route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 dev eth0

route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0

网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-ethx(centos6)

DEVICE=ethx

BOOTPROTO=static/dhcp/none

IPADDR=ip

NETMASK=255.255.255.0/PREFIX=24

GATEWAY=网关

DNS1=

DNS2=

DNS3=

修改mac地址:配置文件中HWADDR=改成MACADDR=(适用场景:网络配置绑定mac地址,访问网络时)

centos6要关闭NetworkManager新加网卡配置才能生效

service NetworkManager stop

chkconfig NetworkManager off

echo 1 > /proc/sys/net/ipv4/ip_forward 开启系统上的路由转发功能,否则目的不是本机的包则丢弃

traceroute [ip] 跟踪路由

mtr [ip] 动态跟踪路由

tracepath [ip] 跟踪路由

netstat 等同于ss命令:查看进程端口

网络接口配置-bonding

Bonding

将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给两块网卡设置同一IP地址是不可以的。通过bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址

Bonding工作模式

Mode 0 (balance-rr)轮询策略,提供负载均衡和容错的能力

Mode 1 (active-backup)主备策略,热备份

Mode 3 (broadcast)广播策略,提供容错能力

Bonding配置

创建bonding设备的配置文件

/etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0

BOOTPROTO=none

BONDING_OPTS= “miimon=100 mode=0” #miimon链路检测

/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=none

MASTER=bond0

SLAVE=yes

USERCTL=no

查看bond0状态:/proc/net/bonding/bond0

bonding删除

ifconfig bond0 down

rmmod bonding

网卡名称

基于BIOS支持启用biosdevname软件

内置网卡:em1,em2

pci卡:pYpX Y:slot ,X:port

(2) 名称组成格式

en: Ethernet 有线局域网

wl: wlan 无线局域网

ww: wwan无线广域网

名称类型:

o<index>: 集成设备的设备索引号

s<slot>: 扩展槽的索引号

x<MAC>: 基于MAC地址的命名

p<bus>s<slot>: enp2s1

使用传统命名方式:

(1) 编辑/etc/default/grub配置文件

GRUB_CMDLINE_LINUX=”rhgb quiet net.ifnames=0″或:修改/boot/grub2/grub.cfg

(2) 为grub2生成其配置文件

grub2-mkconfig -o /etc/grub2.cfg

(3) 重启系统

NetworkManager图像化网卡配置服务

 

nmcli:地址配置工具(RHCE重点)

nmcli connection show:查看网卡详细配置列表

nmcli可配置bonding

teaming相当于bonding:网络组,是将多个网卡聚合在一起方法,从而实现冗错和提高吞吐量

使用nmcli配置网络

显示网络接口属性

nmcli dev show eth0

创建新连接default,IP自动通过dhcp获取

nmcli con add con-name default type Ethernet ifname eth0

删除连接

nmcli con del default

创建新连接static ,指定静态IP,不自动连接

nmcti con add con-name static ifname eth0 autoconnect no typeEthernet ipv4.addresses 172.25.X.10/24 ipv4.gateway 172.25.X.254

启用static连接配置

nmcli con up static

启用default连接配置

nmcli con up default

查看帮助

nmcli con add help

nmcli相关命令

修改连接配置后,需要重新加载配置

nmcli con reload

nmcli con down “system eth0” 可被自动**

nmcli con up “system eth0”

nmcli dev dis eth0 禁用网卡,访止被自动**

图形工具

nm-connection-editor

字符工具

nmtui

nmtui-connect

nmtui-edit

nmtui-hostname

网络组不同于旧版中bonding技术,提供更好的性能和扩展性

网络组由内核驱动和teamd守护进程实现

多种方式runner

broadcast:相当于bonding的mode3广播策略

roundrobin:相当于bondingmode0轮询策略

activebackup相当于bonding的mode1主备策略

loadbalance:负载均衡策略

lacp (implements the 802.3ad Link Aggregation Control Protocol)

网络组规则

启动网络组接口不会自动启动网络组中的port接口

启动网络组接口中的port接口总会自动启动网络组接口

禁用网络组接口会自动禁用网络组中的port接口

没有port接口的网络组接口可以启动静态IP连接

启用DHCP连接时,没有port接口的网络组会等待port接口的加入

 

创建网络组

nmcli con add type team con-name [team名] ifname [team名] config ‘{“runner”: {“name”: “模式”}}’

配置网络组ip

nmcli con mod team0 ipv4.addresses 192.168.1.100/24 ipv4.method manual

添加网卡

nmcli con add type team-slave con-name 连接别名 ifname 网络接口名 master 网络组名

启动网络组

nmcli con up team0

nmcli con up team0-eth1

nmcli con up team0-eth2

teamdctl team0 state; nmcli dev dis eth1(eth1不连接)

删除网络组

nmcli connection down team0

teamdctl team0 state

nmcli connection show

nmcli connectioni delete team0-eth0

nmcli connectioni delete team0-eth1

nmcli connection show

网桥

桥接:把一台机器上的若干个网络接口“连接”起来。其结果是,其中一个网口收到的报文会被复制给其他网口并发送出去。以使得网口之间的报文能够互相转发。网桥就是这样一个设备,它有若干个网口,并且这些网口是桥接起来的。与网桥相连的主机就能通过交换机的报文转发而互相通信。

查看网桥

cat /etc/sysconfig/network-scripts/ifcfg-br0

cat /etc/sysconfig/network-scripts/ifcfg-br0-port0

brctl show

hostname显示主机名

ping测试网络连通性

mtr同上

ip route 显示正确的路由表

 

wget [option]… [URL]…

-q: 静默模式

-c: 断点续传

-P:保存在指定目录

-O: 保存为指定的文件名

–limit-rate=: 指定传输速率,单位K,M等

links:字符界面访问网页

–dump:只看文字

–source:查看源代码