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)
上一篇 2016-09-07 09:37
下一篇 2016-09-07 09:37

相关推荐

  • bash的命令执行状态返回值及命令行展开详解

    命令执行状态返回值及命令行展开是bash的2个基本特性,其详细特点及应用如下:   一、命令执行的状态结果:bash通过状态返回值来输出此结果                 成功:0             …

    Linux干货 2016-11-06
  • Linux磁盘管理进阶

    Linux磁盘管理进阶 dd命令 SWAP与移动介质 磁盘配额 RAID dd命令 dd – convert and copy a file Copy a file, converting and formatting according&…

    Linux干货 2016-09-05
  • yum详解

        yum(全称为 Yellow dog Updater, Modified)yum相对于rpm来说:rpm为基础包管理器,yum则是rpm的前端工具。能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。,yum无法独立存在,系统不允许有两个…

    Linux干货 2016-08-24
  • 铭记今天

        2016年10月19日,我做了一个很艰难的决定,选择了马哥24期网络全程班,就算是冲动也好,无论对错都要坚持下去。 从出来工作之后,一直做销售这块,虽然跟电脑有关,但是其中的艰苦只有自己明白。慢慢的年级上来了,手中没有什么技术,做人生活,总觉得少了什么,总觉得自己以后会被社会淘汰,心一天一天着急。在后选择了一个从来都没有涉及的运维…

    Linux干货 2016-10-19
  • 马哥教育21期网络班—第15周课程+练习—-sed 总结

    sed:编辑器 流编辑器,文本流编辑 ed: Stream EDitor, 行编辑器; 介绍:sed是 一个非交换性文本流编辑器,它编辑文件或标准输入导出的文本拷贝。标准输入可能来自键盘、文件重定向、字符串或变量,或者管道的文本。 sed可以干什么? 别忘了vi也是一个文本编辑器。sed可以随意编辑小或大的文件,有许多…

    Linux干货 2016-11-14
  • 一年直接在于春

    day01

    2018-03-26