今天把Linux的网络配置总结了一下,尽管并不难可是是个比較重要的基础。然后我也不知到自己以后是否会做运维,可是我知道自己比較喜欢刨根问底。还有就是我很珍惜我以前掌握过的这些运维的技能。今天突然间问自己,Linux网络配置的那个文件路径是什么。突然间小心脏又绷紧了,我发现记忆已经開始模糊了。尽管陆续有把之前运维的笔记整理上来,可是每次都有种写遗书的淡淡地忧伤在里面。突然间又想暴粗口了。。。。。

一、网络基本配置

首先就是/etc/sysconfig/network-scripts/ifcfg-eth0这个配置文件。这里的eth0就是我们的网卡名字,也是默认的名字。我们先来看看这个配置文件,例如以下(以我自己机子为样例):

DEVICE="eth0"

         BOOTPROTO="dhcp"

         HWADDR="60:EB:69:BA:19:03"

         NM_CONTROLLED="yes"

         ONBOOT="yes"

         TYPE="Ethernet"

         UUID="10372dbd-9192-405d-b567-6cb32642acfa"

因为是自家用的小电脑,配置比較简单。我们来一个一个介绍一下先:

DEVICE:这个是网卡的名字,不是特别重要

BOOTPROTO:这个一共同拥有4个值各自是none、static、bootp、dhcp。none值主要是在网卡绑定的时候用到的,一般不使用。static值配置静态ip,一般我们在配server的时候就使用static(毕竟server要是经常ip变动,我相信腾讯肯定会被劳资们拆了)。bootp值也不经常使用,它是指通过bootp协议获取ip。bootp是一种udp/ip的协议,详细能够再去了解一下。dhcp值这个一般自家用,就是通过dhcp获取ip。

HWADDR:这个是网卡MAC地址

NM_CONTROLLED:这里的前缀NM是指NetworkManager,是一款Linux自带的网络管理工具。yes就是说这个网卡受到NM的控制,no就是不受它控制。一般做server配静态ip都会把这里设成no,然后NM的开机启动也要用chkconfig off掉。

ONBOOT:这个是指开机的时候是否启动这个网卡,yes就是开机启动,no就是不启动。

TYPE:网卡类型

 UUID: 这个是全球唯一标识,没实用的东西。

因为我电脑用的是dhcp,所以补充一些简单的配置字段:

IPADDR=192.168.1.10           //ip地址

NETMASK=255.255.255.0    //子网掩码

GATEWAY=192.168.1.1        //默认网关

PEERDNS:是否指定DNS。假设使用DHCP协议,默觉得yes。

yes:假设DNS设置,改动/etc/resolv.conf中的DNS

no:不改动/etc/resolv.conf中的DNS

DNS{1, 2}:DNS地址。当PEERDNS为yes时会被写入/etc/resolv.conf中

USERCTL:用户权限控制

yes:非root用户同意控制该网络接口

no:非root用户不执行控制该网络接口

IPV6INIT:是否运行IPv6

yes:支持IPv6

no:不支持IPv6

IPV6ADDR:IPv6地址/前缀长度

二、献给那些windows运维人员

在我实习的时候,我看到有非常多运维window的员工适应不了windows运维到Linux运维的转变。毕竟也上了一些年纪,然后确实转变挺大的。所以我这里给上一个setup命令,能够在Linux以下提供window的图形化界面配置。希望能够帮助到一些人:

很棒吧,(*^__^*) 。除了Network configuration之后,还能够对防火墙、开机启动等各方面的配置。配置完之后,会自己主动在相应的配置文件里进行改动。详细的使用不难,大家自己摸索一下吧。

三、网络配置进阶——网卡绑定

        这个绑定分为2种:单网卡绑定多个ip和多网卡绑定单个ip

单网卡绑定多个ip

使用情景:

比方公司使用不同的运营商。为了提高系统稳定性,会为网卡绑定两个ip。或者像一台server执行多个小型站点站点,也会须要绑定多个ip地址。

详细配置(很easy):

首先由于我环境比較特殊,先进行以下的配置:

1、把ifcfg-eth0配置为静态ip地址(192.168.11.10)

2、service NetworkManager stop 关闭掉NM

然后我们在当前的配置文件夹下运行cp ifcfg-eth0 ifcfg-eth0:0利用原来的配置,创建新的子网卡文件各个配置文件例如以下:

ifcfg-eth0

DEVICE="eth0"

           BOOTPROTO="static"

IPADDR="192.168.11.10"

HWADDR="60:EB:69:BA:19:03"

           NM_CONTROLLED="yes"

           ONBOOT="yes"

           TYPE="Ethernet"

           UUID="10372dbd-9192-405d-b567-6cb32642acfa"

ifcfg-eth0:0

DEVICE="eth0:0"

           BOOTPROTO="static"

IPADDR="192.168.11.11"

HWADDR="60:EB:69:BA:19:03"

           NM_CONTROLLED="yes"

           ONBOOT="yes"

           TYPE="Ethernet"

           UUID="10372dbd-9192-405d-b567-6cb32642acfa"

最后重新启动一下网络,查看一下效果:

多网卡绑定单个ip

           
使用情景:

这个通常是提高网络的高可用性,当一块网卡出现故障的时候使用第二快网卡。尽管听起来好像非常夸张,可是像思科的路由器也会装有备用电源或者CPU(不是我们电脑的cpu,是路由器的)

详细配置:

1、第一步先给两个网卡配置文档加上SLAVE=yes,把它变成奴隶。然后设置MASTER=bond0,告诉它你的主人是bond0。可是这里注意每一个网卡都要设置BOOTPROTO=none。



            范例:



                      DEVICE=eth0



                      ONBOOT=yes



                      BOOTPROTO=none



                      MASTER=bond0



                      SLAVE=yes



           2、创建他们的主人bond0(ifcfg-bond0)。



           范例:               



                    DEVICE=bond0



                    BOOTPROTO=static



                    IPADDR=10.1.3.210



                    NETMASK=255.255.255.0



                    GATEWAY=10.1.3.254

                    ONBOOT=yes



             3、改动/etc/modprobe.d/dist.conf添�以下内容:             



                   alias bond0 bonding

                   options bond0 miimon=100 mode=1



                    mode=0:表示load balancing (round-robin)为负载均衡方式,两块网卡都在工作。

                    mode=1:表示fault-tolerance (active-backup)提供冗余功能,工作方式是主备的工作方式,当中一块网卡在工作(若eth0断掉),则自己主动切换到还有一个块网卡(eth1做备份)。



             最后service network restart验证一下吧。

网络配置——Linux运维基础的更多相关文章

  1. 第一阶段·Linux运维基础-第1章·Linux基础及入门介绍

    01-课程介绍-学习流程 02-服务器硬件-详解 03-服务器核心硬件-服务器型号-电源-CPU 01-课程介绍-学习流程 1.1. 光看不练,等于白干: 1.2 不看光练,思想怠慢: 1.3 即看又 ...

  2. Linux运维基础采集项

    1. Linux运维基础采集项 做运维,不怕出问题,怕的是出了问题,抓不到现场,两眼摸黑.所以,依靠强大的监控系统,收集尽可能多的指标,意义重大.但哪些指标才是有意义的呢,本着从实践中来的思想,各位工 ...

  3. linux运维基础知识

    linux运维基础知识大全 一,序言 每一个微不足道的知识,也是未来的铺垫.每一份工作的薪资职位,也是曾经努力的结果. 二,服务器 1,运维人员工作职责: 1)保证数据不丢失:2)保证服务器24小时运 ...

  4. linux运维基础__争取十月前研究的差不多

    转来的一编,考虑在十月前研究的差不多 linux运维人员基础 1.很多地方经常会用到的rsync工具 实施几台服务器的同步效果 我们公司就是使用这个工具完成服务器的游戏的服务端和客户端同步,有几个文章 ...

  5. [转帖] Linux运维基础知识学习内容

    原作者地址:https://www.cnblogs.com/chenshoubiao/p/4793487.html 最近在学习 linux  对简单的命令有所掌握 但是 复杂的脚本 shell pyt ...

  6. Linux运维基础

    一.服务器硬件 二.Linux的发展史 三.Linux的系统安装和配置 四.Xshell的安装和优化 五.远程连接排错 六.Linux命令初识 七.Linux系统初识与优化 八.Linux目录结构 九 ...

  7. Linux运维基础命令笔试题--看看你会多少?

    老男孩教育linux运维就业班第一周课后学习效果能力上机大考察 (每题10分共130分,过100即可,请给出详细步骤) 1.创建目录/data/oldboy ,并且在该目录下创建文件oldboy.tx ...

  8. linux运维基础之跟我一起学正则表达式(一)

    正则表达式 ### 二, 1) 什么是正则表达式 正则表达式又称为规则表达式 正则表达式是一个计算机的一个概念 正则表达式为了处理大量的文本|字符串而定义的一套规则和方法,通常被用来检索,替换那些符合 ...

  9. Linux运维基础入门(四):Linux中的网络知识04

    一,虚拟机的安装 略 二,Linux系统下的网络配置(Linux虚拟机的网络设定为桥接模式) 桥接模式:虚拟机同主机一样,在网络中相当于一个真实存在的装有Linux系统的电脑.(我们先用这个模式) N ...

随机推荐

  1. MongoDb C/java driver

    1,在linux下安装客户端连接windows下 的MongoDBServer.

  2. PHP安装和配置

    编译安装php5-5.2.6-49.11.src.rpm: ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin ...

  3. 转化率最高的16个WordPress 电子商务主题

    想自己开一个WordPress的电子商务商店?下面我们分享转化率最高的16个WordPress 电子商务主题,它们拥有最棒的用户体验,集成最新的用户体验,慢慢欣赏吧! 原文地址:http://thet ...

  4. cocos2dx lua 学习笔记(二)

    安装开发环境 sublime - http://www.sublimetext.com/2 package control - http://packagecontrol.io/installatio ...

  5. 3第一周课后练习·阅读计划(3)-使用函数来访问私有数据成员

    /* * Copyright (c) 2015, 计算机科学学院,烟台大学 * All rights reserved. * 文件名:test.cpp * 作 靠:刘畅 * 完成日期:2015年 3 ...

  6. swift通过摄像头读取每一帧的图片,并且做识别做人脸识别

    最近帮别人做一个项目,主要是使用摄像头做人脸识别 github地址:https://github.com/qugang/AVCaptureVideoTemplate 要使用IOS的摄像头,需要使用AV ...

  7. GCC、GDB、Makefile

    1.GCC程序编译 Linux系统下的gcc(GNUCCompiler)是GNU推出的功能强大.性能优越的多平台编译器,是GNU的代表作之一.gcc可以在多种硬体平台上编译出可执行程序,其执行效率与一 ...

  8. linux进程间通信之共享内存篇

    本文是对http://www.cnblogs.com/andtt/articles/2136279.html中共享内存(上)的进一步阐释说说明 1 共享内存的实现原理 共享内存是linux进程间通讯的 ...

  9. linux定时执行

    /root/crontab-conf文件为root用户定时执行计划文件      命令:crontab -l 说明:列出定时执行的计划列表   命令:crontab -e 说明:编辑定时执行的计划文件 ...

  10. 时间的获取和转换,C#和Sql

    我们可以通过使用DataTime这个类来获取当前的时间.通过调用类中的各种方法我们可以获取不同的时间:如:日期(2008-09-04).时间(12:12:12).日期+时间(2008-09-04 12 ...