linux网络配置

主要内容:

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个子网。

先用ip地址与子网掩码进行与运算

01100100  01111011   00000000 00000000

11111111   1111 1111  00000000  00000000

再根据要求,划分8个子网即2^3,所以向主机位借3位。

0110 0100  0111 1011  000 00000 00000000

写出子网

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

 

 

简单网络配置:

主机名:

查看主机名:hostnamecat /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

01.png

注意:修改网卡的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 

删除:route del 

route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If] 

目标:192.168.1.3  网关:172.16.0.1 

# route del -host 192.168.1.3 

目标: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] 

目标:192.168.1.3  

网关:172.16.0.1 

# route del -host 192.168.1.3 

目标: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:显示内核路由表

02.png

显示接口统计数据: 

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 

03.png

04.png

启动或者关闭设备:

[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 的数值;

 

 网络配置文件:

IPMASKGWDNS相关配置文件:

 /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_CONTROLLEDNMNetworkManager的简写, 此网卡是否接受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 

修改IP地址等属性: 

#nmcli connection modify IFACE [+|-]setting.property value 

setting.property: 

ipv4.addresses    ipv4.gateway

 ipv4.dns1   ipv4.method  manual | dhcp 

修改配置文件执行生效:

systemctl restart network 

nmcli con reload 

nmcli命令生效: nmcli con down eth0 ;nmcli con up eth0

原创文章,作者:liuzhuo,如若转载,请注明出处:http://www.178linux.com/44091

(0)
liuzhuoliuzhuo
上一篇 2016-09-07
下一篇 2016-09-07

相关推荐

  • 文本处理-三剑客-grep

    文本过滤
    grep [OPTIONS] PATTERN [FILE…]

    2018-03-16
  • MHA安装包及其依赖包下载

    MySQL MHA是一款在业界广泛部署的MySQL高可用软件。但是在安装时,需要安装较多依赖包,并且有些依赖包在操作系统中默认的yum源是不存在的,因此需要到多个地方去寻找相应的包,费时费力。特别是在某些公司的网络政策,只允许少数机器连接外网,因此部署MHA更是苦不堪言。     为了方便大家也是方便以后我自己的使用,…

    Linux干货 2016-12-05
  • LVS-NAT+LVS-NAT基于NFS做wordpress负载均衡实验

    Lvs-nat实验 实验设备:三台centos虚拟机 Director:DIP:10.0.0.254  VIP:192.168.208.129 RS1:RIP:10.0.0.1 RS2:RIP:10.0.0.2   首先都安装ipvsadm、telnet、httpd   配置网卡:RS2:hostonly模式:10.0.0.2/24 配置…

    2017-11-21
  • 一起学DNS系列(十四)DNS查询工具之DIG的使用(1)

      这几节主要讲2个常用的DNS的命令行诊断工具,分别是linux下的DIG和windows下的NSLOOKUP,我们首先来说DIG工具。 DIG,全称Domain Information Groper。原本是Linux平台上BIND服务器诊断的工具(已上传至附件),现在已经有了windows的版本,这节就是利用此工具在windows环境下来做一些…

    2015-03-17
  • 细说linux上的特殊权限位

    linux上的文件的权限 linux的哲学思想之一就是一切皆文件。这样说来,每台安装了linux的主机上,就会有大量的文件。而另一方面,linux在安全方面有着极为出色的表现。众所周知,linux是一个多用户的系统,因此为一个文件加上合适的权限为显得非常有必要了。linux上的基本权限我就不一一介绍了,请不熟悉的同学自行百度脑补。我们来说说linux上文件和…

    Linux干货 2017-04-10
  • shell 脚本基础作业

    1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小 #!/bin/bash :<<EOF 显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小 EOF Host_name=`hostna…

    Linux干货 2016-08-15