Linux网络——修改配置文件

摘要:本文主要学习了如何通过修改配置文件来设置网络参数。

配置文件

通过修改系统的配置文件为系统设置网络参数,这种方式的优点是可以永久保存,计算机重启后仍然生效。缺点是这样的设置不会立刻生效,需要重启计算机或者相关服务才可以使其生效。

在Linux系统里,跟网络有关的主要设置文件如下:

 /etc/host.conf:配置域名服务客户端的控制文件。
/etc/hosts:完成主机名映射为IP地址的功能。
/etc/resolv.conf:域名服务客户端的配置文件,用于指定域名服务器的位置。
/etc/sysconfig/network:包含了主机最基本的网络信息,用于系统启动。
/etc/sysconfig/network-script/:系统启动时初始化网络的一些信息。
/etc/xinetd.conf:定义了由超级进程xinetd启动的网络服务。
/etc/networks:完成域名与网络地址的映射。
/etc/protocols:设定了主机使用的协议以及各个协议的协议号。
/etc/services:设定主机的不同端口的网络服务。

/etc/host.conf

内容

 [root@localhost ~]# cat /etc/host.conf
multi on

说明

multi设置为on表示允许主机拥有多个IP地址。

/etc/hosts

内容

 [root@localhost ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
:: localhost localhost.localdomain localhost6 localhost6.localdomain6

说明

默认存放的是本机IP和本机一些主机名的对应关系,第一行是ipv4信息,第二行是ipv6信息,如果用不上ipv6本机解析,一般把该行注释掉。

localhost、localhost.localdomain、localhost4、localhost4.localdomain4都会被解析成127.0.0.1。

/etc/resolv.conf

内容

 [root@localhost ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search localdomain
nameserver 192.168.35.2

说明

指定域名解析的DNS服务器IP等信息,配置参数一般接触到的有4个:

 nameserver:指定DNS服务器的IP地址。
domain:定义本地域名信息。
search:定义域名的搜索列表。
sortlist:对gethostbyname返回的地址进行排序。

但是最常用的配置参数是nameserver,其他的可以不设置,这个参数指定了DNS服务器的IP地址,如果设置不正确,就无法进行正常的域名解析。

一般来说,推荐设置2个DNS服务器,比如我们用google的免费DNS服务器,那么该文件的设置内容如下:

 nameserver 8.8.8.8
nameserver 8.8.4.4

同样,这个文件也是危险的,如果被人恶意改成了他自己的DNS服务器,他就可以为所欲为的控制你通过域名访问的每个目的地了,这就是常说的DNS劫持。

/etc/sysconfig/network

内容

 [root@localhost ~]# cat /etc/sysconfig/network
# Created by anaconda

说明

设置主机名和网关,是针对本计算机的一个标识,典型的配置如下:

 NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=localhost
GATEWAY=192.168.0.1

参数简要解释:

 NETWORK:设置网络是否有效,yes有效,no无效。
NETWORKING_IPV6:设置ipv6网络是否有效,yes有效,no无效。
HOSTNAME:设置服务器的主机名,最好和/etc/hosts里设置一样,否则在使用一些程序的时候会有问题。
GATEWAY:指定默认网关IP。

/etc/sysconfig/network-scripts/ifcfg-ethx

说明

设置对应网口的IP等信息,比如第一个网口,那么就是/etc/sysconfig/network-scripts/ifcfg-eth0,配置例子:

 DEVICE="eth0"
BOOTPROTO="static"
BROADCAST="192.168.0.255"
HWADDR="00:16:36:1B:BB:74"
IPADDR="192.168.0.100"
NETMASK="255.255.255.0"
ONBOOT="yes"

参数简要解释:

 DEVICE:此配置文件对应的设备的名称,和文件ifcfg-ethx里的ethx要一致。
HWADDR:设备的MAC地址。
UUID:此设备的惟一标识。
BROADCAST:广播地址。
IPADDR:IP地址。
IPV6INIT:是否初始化IPv6。
NETMASK:子网掩码。CentOS 7支持使用PREFIX以长度方式指明子网掩码(PREFIX=)。
GATEWAY:默认网关。
DOMAIN:DNS搜索域。
DNS1:第一DNS服务器指向。
DNS2:备用DNS服务器指向。
ONBOOT:启动或者重启网络时,是否启动该设备,yes是启动,no是不启动。
BOOTPROTO:开机协议,最常见的三个参数如下:static是静态IP。none是不指定,可以用在固定IP的情况,但是如果多网口绑定bond,必须设成none。dhcp是动态IP。
TYPE:接口类型,常见的有Ethernet、Bridge。
USERCTL:是否允许普通用户控制此设备。
PEERDNS:如果BOOTPROTO的值为“dhcp”,是否允许dhcpserver分配的dns服务器指向覆盖本地手动指定的DNS服务器指向。默认为yes。
NM_CONTROLLED:是否使用NetworkManager服务来控制接口。对CentOS 6一般为no,CentOS 7为yes。

/etc/sysconfig/network-scripts/route-ethx

说明

设置对应网口的路由信息,比如第一个网口eth0的路由信息,那么就是/etc/sysconfig/network-scripts/route-eth0。

Linux网络——修改配置文件的更多相关文章

  1. linux网络相关配置文件

    linux系统一般来说分为两大类:1.RedHat系列:Redhat.Centos.Fedora等:2.Debian系列:Debian.Ubuntu等. linux系统中,TCP/IP网络是通过若干个 ...

  2. Linux克隆修改配置文件及IP

    Linux下安装基本的开发软件比较费劲,特别是安装mysql的时候,这时候就需要学会克隆及直接备份base虚拟机了,下次直接打开,修改网卡文件信息就完事. 克隆虚拟机eth0网卡出现的问题解决1:修改 ...

  3. linux网络操作 配置文件

    网络接口配置文件(网卡信息文件) '/etc/sysconfig/network-srcipts/ifcfg-*(eth0)' (注意区分大小写) DEVICE=eth0 网卡编号 HWADDR=08 ...

  4. linux下 修改配置文件的命令

    vi或vim 进入后,按i,屏幕下方会出现INSERT字样,此时可以修改内容 按ESC,退回命令模式 :x是保存退出 :q!是不保存退出

  5. Linux网络配置文件详解

    --Linux网络配置文件详解----------------------2013/10/03 目前在企业级服务器的Linux系统中,RHEL占有绝对的优势,不管是曾经在互联网公司还是在目前测试Vir ...

  6. Linux网络相关概念和修改IP地址的方法

    2.1.1  网卡的命名规则 CENTOS6的网卡命名方式:它会根据情况有所改变而非唯一且固定,在CENTOS6之前,网络接口使用连续号码命名: eth0. eth1等,当增加或删除网卡时,名称可能会 ...

  7. Linux 网络配置文件解析

    Linux 网络配置文件解析 网络配置文件路径/etc/sysconfig/network-scripts/ifcfg-*     *代表网卡名 vim /etc/sysconfig/network- ...

  8. 解决遇到Linux网络配置,从熟悉网络配置文件入手

    如果接触过Linux,网络配置是一个比较棘手的问题.但是Linux是文件为基础来构建的系统,包括我们windows中设备,Linux也视为文件.所以只要我们明白文件的作用.就能对Linux更加的熟悉, ...

  9. Linux网络配置文件

    centos为例: /etc/sysconfig/network文件 用于基本的网络配置信息,包含了控制和网络有关的文件和守护进程的行为参数,包括主机名.网关等 (默认:我的cent0s7在为空,fe ...

随机推荐

  1. Python3 获取系统资源

    cpu disk mem import osimport psutilos.chdir(os.getcwd()) #cpu def get_cpu_info(): cpu_percent=psutil ...

  2. Java 并发编程 | 线程池详解

    原文: https://chenmingyu.top/concurrent-threadpool/ 线程池 线程池用来处理异步任务或者并发执行的任务 优点: 重复利用已创建的线程,减少创建和销毁线程造 ...

  3. Java题库——Chapter4 循环

    1)How many times will the following code print "Welcome to Java"? int count = 0; while (co ...

  4. Docker容器日志路径

    /var/lib/docker/containers/容器ID/容器ID-json.log 可以通过这个路径收集日志到ES中

  5. 将python项目打包为可运行的windows桌面exe程序

    ---恢复内容开始--- 步骤大概如下: 1.需要一个python文件/项目.也就是我们想要打包的文件 2.安装pyinstaller,目的是将我们的python文件生成为exe可执行程序. 3.使用 ...

  6. 选择企业架构实践公开课的指导?TOGAF+ArchiMate+BangEA,EA工作者必学一门公开课

    我发现身边越来越多人谈数字化.谈企业架构,但是感觉谈的总是IT?知道好像不对,但是又好像也无法告诉别人这和传统的IT架构有什么不一样?网上找资料,看了很多也摸不到门路,也不知道别人讲的对不对.对了还好 ...

  7. css权重问题

    权重决定了你css规则怎样被浏览器解析直到生效.“css权重关系到你的css规则是怎样显示的 权重记忆口诀.从0开始,一个行内样式+1000,一个id+100,一个属性选择器/class或者伪类+10 ...

  8. 微信扫码登陆,qq登陆,微博登陆等第三方登陆成功后返回原来的页面并进行跳转

    原理很简单,主要是利用到window.open的第二个属性,name 前端: 原来的网页给window命名为 window.name="single" window.open(“第 ...

  9. tornado的IOLoop.instance()方法和IOLoop.current()方法区别

    在使用tornado时,经常有人疑惑IOLoop.instance()方法和IOLoop.current()方法的区别是什么. IOLoop.instance() 返回一个全局 IOLoop实例. 大 ...

  10. PyCharm批量修改变量名

    方法和 PyCharm重命名文件时更改引用的地方相同