CentOS6中关于网络配置的命令有很多,本文将介绍几个平时最长用的几个命令,以及网卡IP地址的配置和简单路由配置。

1、经常使用的查看IP地址命令为 ifconfig,不跟参数的情况下默认查看所有已启用的网卡信息,如下图所示:

如果想查看具体某块网卡信息,则可以在ifconfig后面跟上网卡设备,如只查看eth0的信息则执行:ifconfig eht0 即可。

禁用某块网卡:结合down命令可以禁用某块网卡,如要禁用eth0网卡,则执行:ifconfig eth0 down 即可,这种禁用只是临时性的,当主机一重启则会自动启用。

启用某块网卡:介个up命令可以启用某块网卡,如将eth0启用,则执行:ifconfig eth0 up 即可。

ifconfig -a 命令可以查看所有网卡信息,包括禁用的。


2、NetworkManager服务可以自动检测网络并自动连接网络的程序,优点是简化网络连接的工作,让桌面本身和其他应用程序能感知网络。但是有的时候通过修改配置文件修改网络时会出现问题,因此大多情况下都会把这个服务禁用掉。禁用方式如下:

service NetworkManager stop #关闭NetworkManager服务

chkconfig NetworkManager off #禁止NetworkManager服务开机自启


3、配置网卡IP地址

  • 使用ifconfig配置,该方法配置的IP地址立即生效,但是只是临时生效,当主机重启后失效。

    语法:ifconfig IFACE IP/MASK [up] 或 ifconfig IFACE IP netmask MASK

  • 使用setup或system-config-network命令掉出图形工具配置IP地址,配完之后需要手动重启network服务,重启后永久生效,重启命令为 service network restart,图形配置界面如下


  • 通过修改配置文件设置IP地址,配置文件路径为/etc/sysconfig/network-scripts/ifcfg-IFACE,配置文件修改完后也需要重启network服务才能生效,且永久生效。

    配置文件中各项参数说明:

    DEVICE:此配置文件应用到的设备,需要填写设备名,如eth0;

    HWADDR:对应设备的MAC地址,如果需要手动修改MAC地址的话需要把HWADDR改成MACADDR;

    BOOTPROTO:激活对应设备时使用的协议,常用的有dhcp、static、none、bootp;

    NM_CONTROLLED:NM是NetworkManager的缩写,表示此网卡是否接受NM控制,CentOS6中建议设置为“no”;

    ONBOOT:在系统引导时是否激活此设备;

    TYPE:设备接口类型,常见的有Ethernet、Bridge;

    UUID:设备的唯一标识;

    IPADDR:指明要设置的IP地址;

    NETMASK:IP地址的子网掩码,也可以使用“PREFIX=网络位”的方式表示;

    GATEWAY:设置默认网关地址;

    DNS1、DNS2、DNS3:设置DNS服务器地址,可以同时设置三个地址;

    USERCTL:普通用户是否可控制次设备;

    PEednS:该选项配合BOOTPROTO使用,如果BOOTPROTO的值为dhcp,则表示是否允许DHCP分配的dns地址覆盖至/etc/文件中(该文件是存放DNS服务器地址的);

如下图,一般情况下配置文件中需要填写的内容:

4、一个网卡配置多个IP地址:可通过网卡别名的方式将多个IP地址绑定到一个网卡上,网卡别名为冒号加数字的形式出现,如eht0:1,并且需要单独创建一个对应的配置文件,可在配置文件里设置IP地址,IP地址必须是静态的,不能使用DHCP获取。具体设置步骤如下:

以在eht1上绑定多个ip地址为例:

第一步:在/etc/sysconfig/network-scripts/目录下新建一个配置文件,如 ifcfg-eth1:1,并添加必要信息,如下图:(在eth1网卡上每绑定一个地址都需要建一个对应的配置文件)

第二步:重启network服务使之生效(service network restart)

一个网卡上绑定多个地址需要注意的是主网卡可以使用DHCP自动获取地址,但是绑定的ip则不能使用DHCP获取地址,只能设置静态IP地址。


5、多个网卡共用一个IP地址:这种方式可实现高可用或者负载均衡,可通过bonding的方式实现,bonding的工作模式有三种,分别为:

Mode0(balance-rr):轮询(Round-robin)策略,以轮询的方式在每一个网卡接口上发送数据包,这种模式可提供负载均衡和容错的能力

Mode1(active-backup):活动-备份(热备)策略,在绑定的多个网卡中,只有一个被激活,其他的都是备用状态,当且仅当活动的接口出现问题时,会自动的激活另外一个网卡接口。

Mode3(broadcast):广播策略,在所有绑定的接口上转发所有报文,这种模式可提供容错能力

下面用eth0和eth1做bonding,使用mode1模式,

第一步:先在/etc/sysconfig/network-scripts/目录下创建一个bonding的配置文件,命名为 ifcfg-bond0,并填写必要信息,如下图

其中miimon是用来进行链路检测的,如果miimon=100,那么系统每100ms检测一次链路连接状态,如果有一条线路不通就会自动转到另一条线路。

第二步:修改eth0和eth1两个网卡的配置文件,如下图

SLAVE=yes:表示该网卡作为备用

MASTER=bond0:表示使用bond0设备作为主用

第三步:重启network服务,使之生效,生效后查看如下图

从图上可以看到物理网卡的MAC地址都是一样的,并且eth0作为主用,eth1作为备用

第四步,测试,手动断开eht0观察eth1是否变成主用,然后在手动断开eth1看能否自动切换到eht0


6、路由设置,可以通过route命令手动添加和删除静态路由

查看路由的命令为:route -n

添加路由语法为:route add [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]

如下图,添加一条去往/24的路由,该路由从eth1口出来,下一跳是

删除路由语法为:route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If]

如下图,删除一条去往/24网段的静态路由

通过以上手动修改路由可以发现,CentOS可以充当路由器,实现路由转发功能,但是需要开启路由转发功能,即将/proc/sys/net/ipv4/ip_forword值修改为1,可以通过下面命令修改:

echo 1 > /proc/sys/net/ipv4/ip_forword

CentOS6 网络管理之网卡配置及简单路由设置的更多相关文章

  1. 关闭iOS原生MPVolumeView音频路由菜单

    我正在使用MPVolumeView允许用户在使用我的应用程序时控制他喜欢的音频路径.该代码显示了该视图:当用户点击音频路由按钮时,会出现一个带有可用选项的菜单.问题:显示音量视图的屏幕可能需要隐藏,因为我的应用程序处理各种事件,我想同时隐藏音频路由菜单我的问题:有没有人知道是否可以手动关闭MPVolumeView的音频路由选择菜单而无需用户按下取消按钮?解决方法在iOS8上,您可以使用以下使用私有API的代码

  2. iOS:使用蓝牙音频输出(kAudioSessionProperty_OverrideCategoryEnableBluetoothInput)AudioSession

    >如果有可用的A2DP设备,我的音频路由将始终自动切换到kAudioSessionOutputRoute_BluetoothA2DP路由.如何防止此路线更改?我希望你们中的一些人可以帮助我解决这些问题.这对我对CoreAudio的整体理解,特别是AudioSession框架,真的有帮助.解决方法AudioSession是一项棘手的业务.1.BluetoothHFPaudiooutputisonlypossibleincaseofAudioSessionkAudioSessionCategory_PlayA

  3. Swift设计模式之命令模式

    转自Swift设计模式原文Design-Patterns-In-Swift

  4. Swift3.0 Swift2.3 获取IP地址 获取网关地址

    最近需要在Swift项目中获取路由器的网关地址,在网上找了半天的代码也没发现太多有价值的东西,而且大多都是OC代码,很少有Swift的相关代码,只找到了一个通过Swift代码获取设备IP的代码,最后实在没办法只能曲线救国了。下面上代码:思路就是把获取到的设备IP地址的最后一位手动修改为”1”,前面三位不需要修改,比如我的手机ip地址是192.168.31.212,所以网关地址就是192.168.31.1。最近苹果更新了Swift3.0,这里更新一下代码。

  5. Swift3.0服务端开发(二) 静态文件添加、路由配置以及表单提交

    今天博客中就来聊一下Perfect框架的静态文件的添加与访问,路由的配置以及表单的提交。也就是webroot的文件目录变地方了。后方的尾随闭包是对响应的处理。action的地址就是我们在服务器端配置的路由地址“127.0.0.1:8181/login”,而表单提交的方式是POST。

  6. Ceph部署二RGW搭建

    背景CephRGW简介CephRGW基于librados,是为应用提供RESTful类型的对象存储接口。环境规划如上篇文章《Ceph部署(一)集群搭建》所述:4台服务器:1台作为Monitor,1台作为OSDRGW,还有两台作为OSD。部署CephRGW进入上文所述的my-cluster目录。该脚本会连接RGW,创建一个bucket并列出所有的bucket。正常的输出应该为:小结通过ceph-deploy命令,已经大大地简化了对Ceph集群和RGW的安装和配置。但如果想挑战下自己,或者想让自己了解更多,试

  7. Swift Web 开发之 Vapor - 路由二

    路由参数Vapor提倡使用类型安全的路由参数来接收数据,我们可以在路由方法中使用Swift类型来指定参数类型,Vapor会在内部解析并将参数返回给闭包以供使用,非常方便。Swift中处处有协议,路由参数也是如此,我们所见例子中的Int其实就是Vapor给实现了StringInitializable协议,当然String也已经默认实现。throw另外一大特性就是可以直接在路由中抛出异常,我们可以throw任何遵从Swift.Error协议的对象,当然Vapor已经为我们封装好了几个常用的Error来方便我们

  8. EFColorPicker - 一个纯 Swift 的轻量级 iOS 颜色选择器

    EFColorPicker是一个纯Swift的轻量级iOS颜色选择器,受MSColorPicker启发。或执行以下命令:环境iOS8.0+Xcode9.0+Swift4.0+安装EFColorPicker可以通过CocoaPods进行获取。只需要在你的Podfile中添加如下代码就能实现引入:备注EFColorPicker的第一个版本从MSColorPicker转换而来,在此对MSColorPicker的作者sgl0v表示感谢!作者EyreFree,eyrefree@eyrefree.org协议EFQRC

  9. 使用LLDB调试Swift

    LLDB是个很好的选择。接下来我会探讨一些工作中常用到的一些LLDB调试技巧。LLDB拥有大量有用的调试工具。LLDB的bugreport命令可以生成一份详细的app当前状态的报告。这些命令有针对C++,Objective-C,Swift和RenderScript的。使用LLDB的这些命令可以让调试变得更自动化。process用于控制要调试的进程,可把LLDB依附到特定target或从target上解绑。processstatus用于打印当前进程及断点处的相关信息:使用如下命令可继续执行:这等同于Xcod

  10. swift – Singleton模式和正确使用Alamofire的URLRequestConvertible

    如果是这样,我该如何设置经理的基础?此外,如果我使用这个管理器//这可以与上面显示的路由器结构一起工作?我是Alamofire图书馆的新手,迅速。然而,当您获得超过6或7例的情况下,这很快就会变得很快。首先,您的模型对象需要符合RouterObject协议。最后一个问题是您无法直接在Routerenum中存储baseURL或OAuthToken。但是,如果您只是使用默认会话触发网络,那么sharedInstance可能就足够了。

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部