主要内容:
ip地址以及子网划分
路由基本概念
网络配置工具:ifconfig,ip,netstat使用
网卡配置文件及修改
IP地址:
它们可唯一标识 IP 网络中的每台设备 v
每台主机(计算机、网络设备、外围设备)必须具有唯 一的地址 v
IP地址由两部分组成:
网络ID: 标识网络,每个网段分配一个网络ID
主机 ID:标识单个主机由组织分配给各设备
A类地址:
以0开头,子网掩码/8 也可表示为255.0.0.0
所以网络数为:2^(8-1) 因为第一位被0占用了
网络中主机数为:2^24-2
私网地址为:10.0.0.0
B类地址:
以10开头,子网掩码为/16 即255.255.0.0
网络数为:2^(16-2) 前2位被占用了
网络中的主机数为:2^16-2
私网地址为:172.16.0.0-172.31.0.0
C类地址:
以110开头,子网掩码为/24 即255.255.255.0
网络数为:2^(24-3) 前3位被占了
网络中的主机数为:2^8-2
私网地址:192.168.0.0-192.168.255.0
D类地址:组播
以1110开头,从224-239
ip地址子网划分步骤:例如划分100.123.211.22/16划出8个子网。
1 先用ip地址与子网掩码进行与运算
01100100 01111011 00000000 00000000
11111111 1111 1111 00000000 00000000
2 再根据要求,划分8个子网即2^3,所以向主机位借3位。
0110 0100 0111 1011 000 00000 00000000
3 写出子网
0110 0100 0111 1011 001 00000 00000000
0110 0100 0111 1011 010 00000 00000000
0110 0100 0111 1011 011 00000 00000000
0110 0100 0111 1011 100 00000 00000000
0110 0100 0111 1011 101 00000 00000000
0110 0100 0111 1011 110 00000 00000000
0110 0100 0111 1011 111 00000 00000000
0110 0100 0111 1011 000 00000 00000000
转换成10进制为:
100.123.0.0 100.123.32.0 100.123.64.0 100.123.96.0 100.123.128.0
100.123.160.0 100.123.192.0 100.123.224.0
路由的几个基本概念:
动态路由:路由选择器自动共享路由信息,根据路由协议自动构建路由表
静态路由:手动构建路由表
直接路由:发往直接路由的设备不仅包含目的ip地址信息,还包含目的路由设备的mac地址
间接路由:发往路由设备的信息中包含最终的ip地址信息,同时包含下一个网关的mac地址
主机路由/网络路由:两者根据目的地址完整度区分,主机路由的目的地址包含的是完整的主机地址信息,网络路由目的地址包含的是网络地址,主机部分为0。
简单网络配置:
主机名:
查看主机名:hostname;cat /etc/hostname
修改:vim /etc/hostname
hostnamectl set-hostname xxx
ifcfg系列:ifconfig netstat route
ifconfig: 显示网卡信息
用法 ifconfig [device]
ifconfig interface [aftype] options | address …
显示网卡信息
-a:查看所有网卡信息
ifconfig 网卡名 up|down 开启|关闭网卡
ifconfig eth0 10.1.110.110/16 up
ifconfig eth0 10.1.111.111 netmask 255.255.0.0
注意:修改网卡的ip地址会立即生效,但是重启后会失效
route命令:路由管理命令
查看路由:route -n
添加 route add
route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1
# route add default gw 172.16.0.1 v
删除:route del
route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If] v
目标:192.168.1.3 网关:172.16.0.1
# route del -host 192.168.1.3 v
目标:192.168.0.0
网关:172.16.0.1
# route del -net 192.168.0.0 netmask 255.255.255.0
注意:添加的网关必须能够ping通,而且添加的ip也必须是可以ping通的
删除:route del route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If] v
目标:192.168.1.3
网关:172.16.0.1
# route del -host 192.168.1.3 v
目标:192.168.0.0
网关:172.16.0.1
# route del -net 192.168.0.0 netmask 255.255.255.0
netstat:
-t: tcp协议相关
-u: udp协议相关
-w: raw socket相关
-l: 处于监听状态
-a: 所有状态
-n: 以数字显示IP和端口;
-e:扩展格式
-p: 显示相关进程及PID
显示路由表:
netstat -r:显示内核路由表
显示接口统计数据:
netstat {–interfaces|-I|-i} [iface] [–all|-a] [-extend|-e] [–program|-p] [–numeric|-n]
# netstat -i 显示网卡统计信息
# netstat –I=IFACE 显示某块网卡统计信息
# ifconfig -s eno16777736
ip命令:配置linux网络属性
参数:
option :设定的参数,主要有:
-s :显示出该设备的统计数据(statistics),例如总接受封包数等;
作用对象:就是是可以针对哪些网络参数进行动作,包括有:
link :关于设备 (device) 的相关设定,包括 MTU, MAC 地址等等
addr/address :关于额外的 IP 设定,例如多 IP 的实现等等;
route :与路由有关的相关设定
ip link :与数据链路层有关
ip link 可以设定与设备 (device) 有关的相关设定,包括 MTU 以及该网络设备的 MAC 等等, 当然也可以启动 (up) 或关闭 (down) 某个网络设备。整个语法是这样的:
[root@linux ~]# ip [-s] link show <== 单纯的查阅该设备相关的信息
[root@linux ~]# ip link set [device] [动作与参数]
参数:
show:仅显示出这个设备的相关内容,如果加上 -s 会显示更多统计数据;
set :可以开始设定项目, device 指的是 eth0, eth1 等等设备代号;
动作与参数:包括以下动作:
up|down:启动 (up) 或关闭 (down) 某个设备,其他参数使用预设的以太网参数;
address:如果这个设备可以更改 MAC ,用这个参数修改;
name:给予这个设备一个特殊的名字;
mtu:设置最大传输单元。
显示设备信息:
ip link show
ip -s link show eth0
启动或者关闭设备:
[root@linux ~]# ip link set eth0 up
# 启动eth0这个设备;
[root@linux ~]# ip link set eth0 down
# 关闭eth0这个设备;
[root@linux ~]# ip link set eth0 mtu 1000
更新网卡的 MTU 使用 ifconfig 也可以实现。如果是要更改『网卡代号、 MAC 地址的信息』的话,那可就得使用 ip了,设定前需要先关闭该网卡,否则会不成功。
[root@linux ~]# ip link set eth0 down <==关闭设备
[root@linux ~]# ip link set eth0 name vbird <==重新设定
[root@linux ~]# ip link show <==查看信息
ip addr:与网络层有关,设定与ip有关的各项参数
ip addr show:查看ip信息 等价于ip addr
ip address [add|del] [IP参数] [dev 设备名] [相关参数]
参数:
show :单纯的显示出设备的 IP 信息;
add|del :进行相关参数的增加 (add) 或删除 (del) 设定,主要有:
IP 参数 :主要就是网域的设定,例如 192.168.100.100/24 之类的设定;
dev :这个 IP 参数所要设定的设备,例如 eth0, eth1 等等;
相关参数:如下所示:
broadcast:设定广播位址,如果设定值是 + 表示让系统自动计算;
label :该设备的别名,例如eth0:0;
scope :这个设备的领域,通常是以下几个大类:
global :允许来自所有来源的连线;
site :仅支持IPv6 ,仅允许本主机的连接;
link :仅允许本设备自我连接;
host :仅允许本主机内部的连接;
所以当然是使用 global 了。预设也是 global。
通过ip addr add 配合label使用可以模拟多块网卡
ip route:关于路由的设定,与route用法相似
[root@linux ~]# ip route show <==单纯的显示出路由的设定
[root@linux ~]# ip route [add|del] [IP或网域] [via gateway] [dev 设备]
参数:
show :单纯的显示出路由表,也可以使用 list ;
add|del :增加 (add) 或删除 (del) 路由;
IP或网域:可使用 192.168.50.0/24 之类的网域或者是单纯的 IP ;
via :从那个 gateway 出去,不一定需要;
dev :由那个设备连出去,需要;
mtu :可以额外的设定 MTU 的数值;
网络配置文件:
IP、MASK、GW、DNS相关配置文件:
/etc/sysconfig/network-scripts/ifcfg-IFACE v
路由相关的配置文件:
/etc/sysconfig/network-scripts/route-IFACE v/etc/sysconfig/network-scripts/ifcfg-IFACE
配置文件详解:
DEVICE:此配置文件应用到的设备
HWADDR:对应的设备的MAC地址
BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp
NM_CONTROLLED:NM是NetworkManager的简写, 此网卡是否接受NM控制;建议CentOS6为“no”
ONBOOT:在系统引导时是否激活此设备 v
TYPE:接口类型;常见有的Ethernet, Bridge v
UUID:设备的惟一标识 v
IPADDR:指明IP地址 v
NETMASK:子网掩码 v
GATEWAY: 默认网关 v
DNS1:第一个DNS服务器指向 v
DNS2:第二个DNS服务器指向 v
USERCTL:普通用户是否可控制此设备 v
PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许 dhcp server分配的dns服务器指向信息直接覆盖至 /etc/resolv.conf文件中
配置文件修改后,需要systemctl restart network———-
每三行定义一条路由
ADDRESS#=TARGET
NETMASK#=mask
GATEWAY#=GW
Bond配置:
1创建bond0配置文件
vim ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
IPADDR=10.1.100.100
PREFIX=16
BONGDING_OPTS=”miimon=100 mode=1”
2创建几块网卡配置文件
vim ifcfg-eth0
DEVICE=eth0
MASTER=bond0
SLAVE=yes
systemctl restart network
ifconfig查看
cat /proc/net/bonding/bond0 查看bond状态
删除bond0
ifconfig bond0 down
rmmod bonding
lsmod|grep bonding查看绑定模块
nmcli用法:
nmcli [ OPTIONS ] OBJECT { COMMAND | help }
device – show and manage network interfaces
nmcli device help
connection – start, stop, and manage network connections
nmcli connection help v
修改IP地址等属性:
#nmcli connection modify IFACE [+|-]setting.property value
setting.property:
ipv4.addresses ipv4.gateway
ipv4.dns1 ipv4.method manual | dhcp v
修改配置文件执行生效:
systemctl restart network
nmcli con reload v
nmcli命令生效: nmcli con down eth0 ;nmcli con up eth0
原创文章,作者:liuzhuo,如若转载,请注明出处:http://www.178linux.com/44091