linux系统一般来说分为两大类:1、RedHat系列:Redhat、Centos、Fedora等;2、Debian系列:Debian、Ubuntu等。

linux系统中,TCP/IP网络是通过若干个文本文件来进行配置的,需要配置这些文件来联网,下面对linux两大类系统中基本的TCP/IP网络配置文件做学习总结。

第一类Debian中Ubuntu系统为例

Ubuntu系统的网络配置文件有interfaces,resolv.conf等。

一、网络接口配置文件:/etc/network/interfaces

1、内容如下:

# The loopback network interface

auto lo#网卡开机自动挂载

iface lo inet loopback

auto eth0#网卡开机自动挂载,连接网络

iface eth0 inet static #static表示使用固定ip,dhcp表示使用动态ip

address 10.1.101.227 #设置ip地址

netmask 255.255.255.0 #设置子网掩码

gateway 10.1.101.254 #设置网关

dns-nameservers 10.1.101.51

修改了interfaces用下面命令使网络设置生效:/etc/init.d/networking restart #重启网络

或者ifdown eth0 && ifup eth0

2、设置第二个ip地址(虚拟IP地址)

编辑文件/etc/network/interfaces

auto eth0:1
iface eth0:1 inet static
address 192.168.1.60
netmask 255.255.255.0
network x.x.x.x
broadcast x.x.x.x
gateway x.x.x.x

二、DNS配置文件:/etc/resolv.conf

首先可以在/etc/hosts中加入一些主机名称和这些主机名称对应的IP地址,这是简单的使用本机的静态查询。

要访问DNS服务器来进行查询,需要设置/etc/resolv.conf文件。

通过该文件设置DNS服务器的IP地址及DNS域名,该文件是由域名解析器使用的配置文件。

(域名解析器:resolver,一个根据主机名解析IP地址的库)

domainname 域名

search domainname.com   #表示提供了一个不包括完全域名的主机时,在主机后面添加domainname.com后缀
nameserver x.x.x.x#设置首选DNS,解析域名时使用该地址指定的主机为域名服务器,按nameserver出现顺序查找。

nameserver x.x.x.x#设置备用DNS

sortlist   #对返回的域名进行排序

使网络设置生效:/etc/init.d/networking restart #重启网络

三、/etc/hosts文件

包含(本地网络中)已知主机的一个列表。如果系统的IP不是动态获取,就可以使用它。对于简单的主机名解析(点分表示法),在请求DNS或NIS网络之前,/etc/hosts.conf通常会告诉解析程序先查看这里。

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

四、/etc/host.conf

当系统中同时存在DNS域名解析和/etc/hosts主机表机制时,由该/etc/host.conf确定主机名解释顺序。

order hosts,bind #名称解释顺序,order是关键字,定义先用本机hosts主机表进行名称解释,如果不能解释,再搜索bind名称服务器(DNS)。

multi on #允许主机有多个IP地址

nospoof on #禁止IP地址欺骗

五、/etc/services

Internet网络服务文件,将网络服务名转换为端口号/协议。由inetd、telnet、tcpdump和一些其他程序读取。文件中每一行对应一种服务,它由4个字段组成,中间用TAB或者空格分隔,分别表示 “服务名称”、“使用端口”、“协议名称”以及“别名”。

服务            端口/端口类型           别名

$ cat /etc/services  |more

tcpmux          1/tcp                           # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users
daytime 13/tcp
daytime 13/udp
netstat 15/tcp
qotd 17/tcp quote
msp 18/tcp # message send protocol

六、主机名称配置文件/bin/hostname

用命令hostname newname来设置新主机名

系统启动时,它会从/etc/hostname来读取主机的名称

#假设修改主机名为controller
hostname controller
echo "controller" > /etc/hostname

七、网络相关脚本和命令

/etc/init.d/networking

系统启动时的初始化脚本,当系统以某个级别启动时,它负责初始化所有一级配置的网络接口。

ifconfig命令

不带任何参数的ifconfig命令查看当前系统网络配置情况:
eth0:表示网卡代号

lo:linux内部的网络回环地址,用于模拟网络行为

HWaddr:网卡的硬件地址,也就是MAC地址

inet addr:网卡的Ip地址

Bcast:广播地址

Mask:子网掩码

MTU:最大传输单元(Maximum Trassmission Unit),标识网络接口的可传输的最大封包,此值设定错误可能引起网络故障。

PX:网络从启动到现在为止数据接收情况

TX:网络从启动到现在为止数据发送情况

collisions:网络信号发生冲突的情况

防火墙相关命令

查看防火墙状态:sudo ufw status

启用防火墙:

sudo ufw enable #开启了防火墙,并在系统启动时自动开启

sudo ufw default deny #关闭所有外部对本机的访问,但本机访问外部正常。

sudo ufw disable   #禁用防火墙,默认是禁用的

打开某个端口

sudo ufw allow smtp #允许所有的外部IP访问本机的25/tcp (smtp)端口

sudo ufw allow 22/tcp  #允许所有的外部IP访问本机的22/tcp (ssh)端口

sudo ufw allow 53  #允许外部访问53端口(tcp/udp)

sudo ufw allow from 192.168.1.100  #允许此IP访问所有的本机端口

sudo ufw allow proto udp 192.168.0.1 port 53 to 192.168.0.2 port 53

禁用或关闭某个端口

sudo ufw delete allow 53 #禁用 53 端口

sudo ufw delete allow 80/tcp #禁用 80 端口

sudo ufw deny smtp  #禁止外部访问smtp服务

sudo ufw delete allow smtp #删除 smtp 端口的许可

sudo ufw delete allow from 192.168.254.254 #禁止某特定 IP

第二类redhat中redhat为例

redhat系统的网络配置

一、修改IP地址

1、ip配置文件

修改对应网卡的IP地址配置文件/etc/sysconfig/network-scripts/ifcfg-<interface-name>文件

在Redhat中,系统网络设置的配置文件保存在/etc/sysconfig/network-scripts目录下。ifcfg-eth0代表第一块网卡的配置信息,ifcfg-eth1代表第二块网卡的配置信息。在启动时,系统通过读取这个配置文件决定某个网卡是否启动和如何配置。

若希望手工修改网络地址或增加新的网络连接,可以通过修改对应的ifcfg-<interface-name>或创建新的文件来实现。

下面是/etc/sysconfig/network-scripts/ifcfg-{interface-name}的配置信息含义

DEVICE={name}   #{name}表示网卡对应物理设备的名字,eth0是第一块网卡,双网卡或更多依次为eth1,eth*

TYPE=Ethernet  #网络类型,Ethernet代表以太网

ONBOOT=yes/no   #系统启动引导时是否激活该网络接口,设为yes,即激活此设备

NM_CONTROLLED=yes

BOOTPROTO=none/static/bootp/dhcp   #设置网卡获得ip地址的方式,可能选项为none,static,bootp,dhcp,分别对应不适用协议,静态指定ip地址,通过dhcp协议获得ip地址,通过bootp协议获得ip地址

IPADDR={address}   #如果设置网卡获得ip地址的方式为静态指定,{addres}就代表赋给该网卡的ip地址
NETMASK={mask}  #{mask}表示网卡对应的网络掩码

NETWORK={address} #{address}表示网卡对应的网络地址,(可以不要)
GATEWAY={address} #{address}默认网关
DNS1=10.1.101.51     #DNS服务配置

BROADCAST={address}  #{address}对应的子网广播地址,如192.168.0.255(可以不要)

MACADDR={MAC-address}   #{MAC-address}表示指定一个MAC地址

USERCTL=yes/no    # 是否允许非root用户控制该设备

HWADDR=50:e5:49:df:b0:8b  #对应的网卡物理地址

IPV6INIT=no  #IPV6

IPV6_AUTOCONF=no

2、单网卡绑定2个IP

只需要在/etc/sysconfig/network-scripts目录里面创建一个名为ifcfg-eth0:0的文件,

内容样例为:

DEVICE="eth0:0"
IPADDR="x.x.x.x"
NETMASK="255.255.255.0"

如果需要再多绑定一个IP地址,只需要把文件名和文件内的DEVICE中的eth0:0加一即可。

linux最多可支持255个IP别名。

二、修改主机名

临时修改:hostname xxx

永久修改:/etc/sysconfig/network

[root@localhost ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=localhost.localdomain #修改localhost.localdomain为xxx

localhost.localdomain中点的前面是主机名,后面是域名。如果没有点就代表是主机名。

三、修改网关

网关配置文件为/etc/sysconfig/network文件

网关配置也可以在/etc/sysconfig/network-scripts/ifcfg-eth0中配置。

network用来指定服务器上的网络配置信息,该文件配置项含义如下:

NETWORK=yes #表示系统是否使用网络,一般设置为yes,如果设置为no,则不能使用网络,而且很多系统服务程序将无法启动
RORWARD_IPV4=yes
HOSTNAME={hostname}  #{hostname}表示服务器的主机名,这里的主机名要和/etc/hosts中设置的主机名对应
GAREWAY={address}  #{address}设置本机连接的网关的IP地址,例如,网关10.0.0.2
GATEWAYDEV={device}  #{device}表示网关的设备名,如:eth0
NETWORK=yes/no     #网络是否被配置
FORWARD_IPV4=yes/no     #是否开启IP转发功能

四、修改DNS

DNS配置文件为/etc/resolv.conf文件

DNS配置也可以在/etc/sysconfig/network-scripts/ifcfg-eth0中配置。

resolv.conf文件用来配置DNS客户端,它包含了DNS服务器地址和域名搜索配置。同Ubuntu的配置。目前最多支持三个DNS服务器。

nameserver 8.8.8.8 #google域名服务器

nameserver 8.8.8.4 #google域名服务器

五、/etc/hosts文件

在机器启动时,在可用查询DNS以前,机器需要查询一些主机名到IP地址的匹配。这些信息存放在/etc/hosts文件中。

在没有域名服务器的情况下,系统上所有的网络程序都通过查询该文件来解析对应于某个主机名的IP地址。

[root@lxy-nfs network-scripts]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.1.101.117 lxy-nfs  lxy-nfs.engine.com

最左边是一系列主机IP信息,中间是一些列主机名。任何后面的列都是该主机的别名。

六、重启网络配置方法

1、#service network restart

2、#/etc/init.d/network restart

3、#ifdown eth0

#ifup eth0

4、#ifconfig eth0 down

#ifconfig eth0 up

七、相关命令

修改IP地址

1、即时生效:

#ifconfig eth0 192.168.0.2 netmask 255.255.255.0

2、重启系统生效:

修改/etc/sysconfig/network-scripts/ifcfg-eth0

修改网关Default Gateway

1、即时生效

#route add default gw 192.168.0.2 netmask 255.255.255.0

2、重启系统生效:

修改/etc/sysconfig/network

修改DNS

修改/etc/resolv.conf修改后可即时生效,启动同样有效

修改host name

1、即时生效

hostname newname

2、重启系统生效

修改/etc/sysconfig/network

启动和关闭防火墙

1、即时生效:

#service iptables start

#service iptables stop

2、重启系统生效:

#service iptables on

#service iptables off

总结网络配置:配置IP,网关,DNS,然后重启网络。

开放指定端口

1、用命令

#开放端口:8080

/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

#重启防火墙以便改动生效:(或者直接重启系统)

/etc/init.d/iptables restart

#将更改进行保存
/etc/rc.d/init.d/iptables save

2、直接修改iptables

直接在/etc/sysconfig/iptables中增加一行:

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 8080 -j ACCEPT

linux网络相关配置文件的更多相关文章

  1. 10.11 Linux网络相关 10.12 firewalld和netfilter 10.13 netfilter5表5链介绍 10.14 iptables语法

    Linux网络相关 ifocnfig 查看网卡ip(yum install net-tools) ip add 查看网卡 ip add = ifocnfig ifconfig 不显示down掉的网卡, ...

  2. Linux网络相关、firewalld和netfilter、netfilter5表5链介绍、iptables语法 使用介绍

    第7周第3次课(5月9日) 课程内容: 10.11 Linux网络相关10.12 firewalld和netfilter10.13 netfilter5表5链介绍10.14 iptables语法 扩展 ...

  3. Linux centos7 Linux网络相关、firewalld和netfilter、netfilter5表5链介绍、iptables语法

    一. Linux网络相关 yum install net-tools ifconfig查看网卡ip ifup ens33开启网卡 ifdown ens33关闭网卡 设定虚拟网卡ens33:0 mii- ...

  4. Linux 网络相关命令 Cheat Sheet

    以下漫画形式呈现的常用 Linux 网络相关命令速查表来自 twitter -

  5. Linux网络——修改配置文件

    Linux网络——修改配置文件 摘要:本文主要学习了如何通过修改配置文件来设置网络参数. 配置文件 通过修改系统的配置文件为系统设置网络参数,这种方式的优点是可以永久保存,计算机重启后仍然生效.缺点是 ...

  6. Linux网络相关配置

    一.修改网卡相关配置 Linux网络参数是在/etc/sysconfig/network-scripts/ifcfg-eth0中设置,其中ifcfg-eth0表示是第一个网卡,如果还有另外一块网卡,则 ...

  7. linux网络相关命令使用

    A,iptables使用示例 1,将请求80端口的包发送给本机8180端口(这样,别的机器访问本机的80端口时会被转发到8180端口去) iptables -t nat -A PREROUTING - ...

  8. Linux网络相关命令firewalld和netfilter、iptables 使用(6/22)

    iptables和netfilter的关系: netfilter在内核空间的代码根据table中的rules,完成对packet的分析和处置.但是这些table中的具体的防火墙rules,还是必须由系 ...

  9. Linux 网络相关命令

    1.修改ip,dns相关:sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0 2.ifconfig 查找ip,mac地址 3.重启网络:sudo ser ...

随机推荐

  1. PHP实现上传文件并存进数据库的方法

    本文实例讲述了PHP实现上传文件并存进数据库的方法.分享给大家供大家参考.具体如下: show_add.php文件如下: <?php if(!isset($_REQUEST[''id'']) o ...

  2. 用C#打开文件对话框的方法和简单使用的程序

  3. PHP 操作socket 实现简易聊天室

    <?php $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP ); socket_bind($socket ,'127.0.0.1', ...

  4. Android SDK Tools和Android SDK Platform-tools

    SDK Platform 可以理解为版本,因此有 SDK Platform 7,SDK Platform 8等等Android SDK Tools 是各个版本都可通用的工具文件夹,里面有draw9pa ...

  5. SAP debug的几种方式

         1. 直接在程序中设断点 这种方式想必大家都知道了,在se38里面打上breakpoint,程序运行到该处即进入debug模式   2.background Job的debug 进入SM37 ...

  6. SharePoint 新特性及安装需知

    以下内容转自Kaneboy 大牛,但我在安装正式版的过程中发现一些问题,主要是.net 版本的问题,弄了我一个晚上,我在下面标出来了.我的安装环境是Windows server 2012 R2 关于详 ...

  7. Office 365 - SharePoint 2013 Online 之母版页和页面布局

    1.打开https://login.microsoftonline.com,登陆,点击SharePoint,如下图: 2.打开网站集,可以查看.添加.删除等管理操作: 3.打开一个站点,如下图: 4. ...

  8. 关于ApplicationPoolIdentity

    一直以来IIS中的网站默认都是以network service在运行,但是从IIS7开始,默认会以ApplicationPoolIdentity运行. 这个账户比较特殊,是一种虚拟帐户,你无法在计算机 ...

  9. 安卓开发-See the log file\.metadata\.log.

    今天在给安卓项目res-valus-string.xml 中字符串修改的时候,突然eclipse卡住了 然后任务管理器关掉之后,重新打开 显示一个错误 百度了一下 eclipse启动报错,让查看.me ...

  10. Java从零开始学四十七(注解简述)

    一.Java中注解Annotation 什么是注解:用来描述数据的数据(元数据). Java代码里的特殊标记.它为代码中添加用Java程序无法表达的额外信息提供一种形式化的方法,使用我们可以在未来的某 ...