您的位置:首页 > 理论基础 > 计算机网络

linux网络设置

2018-01-27 22:38 267 查看
一、概念:ip,子网掩码,dns,网关,广播地址,网段

二、命令

ifconfig—-查看网络接口

hostname—-查看主机名

route—-查看路由表

netstat—-查看网络连接情况 ,-a 所有, -n 数字, -r路由表,-l监听,-t TCP, -u UDP, -p 进程号

dig--命令来查看DNS信息

Ping —-测试连通性

Nslookup—-测试DNS域名解析 nslookup -qt=类型 目标域名 指定的DNS服务器IP或域名

Traceroute—-路由跟踪

mii-tool eth0命令我们可以用来查看网卡状态信息,包括了以太网连接是否正常,使用的是哪种型号的网卡等等

mii-tool命令可以查看网卡的一些底层信息,但是如果我们想要查看网卡的更详细信息 -i 网卡的驱动信息,-S 网卡当前底层工作状态信息

三、下面就是介绍三种Linux系统中网络环境配置的方法:

1.以root身份登录,然后输入setup命令,如:

[root@xiaoluo ~]# setup

这时候我们设置的网络环境并没有生效,如果要生效我们必须重启下网卡,使用如下命令/etc/rc.d/init.d/network restart |service network restart (重启所有网卡)

2.通过ifconfig eth0 x.x.x.x来进行配置

我们知道,在Linux系统中通过ifconfig可以查看ip信息,这里我们可以通过 ifconfig eth0 x.x.x.x来对ip直接进行修改(注意:这种修改方式是立即生效的,

但是却是临时的,当我们注销系统,再次进入时,ip信息又会变成配置之前的信息)

ifconfig

****ifconfig eth0 up启用第一块网卡

****ifconfig eth0 172.25.215.1 netmask 255.0.0.0  用命令的方式配置接口卡的地址。

[root@localhost ~]# ifconfig eth1 192.168.40.20/32
ifconfig 网络接口名称 ip地址/子网掩码长度

[root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255

[root@localhost ~]# route add -net 192.148.40.0/32 gw 192.148.40.1
添加静态路由:Route add –net ip地址/掩码 gw 下一跳地址

[root@localhost ~]# route del -net 192.148.40.0/32
删除路由:route del –net 目标网段/掩码

[root@localhost ~]# route add default gw 192.168.4.1
添加默认网关:route add default gw ip地址 

[root@localhost ~]# route del default gw 192.168.4.1
删除默认网关:route del default gw ip地址

ip addr add 192.168.0.2/24 brd 192.168.0.255 dev eth0

ip addr del 192.168.0.1 dev eth0

****ifconfig    查看接口卡的属性,后可根具体的接口卡。

****ifconfig eth0 down    禁用第一块网卡。

或者 ifdown/up eth0 或者service network restart (重启所有网卡)

3.通过修改 /etc/sysconfig/network-scripts/ifcfg-eth0 文件

/etc/sysconfig/network-scripts/ifcfg-eth0 参数详解

DEVICE="eth1"

    网卡名称

NM_CONTROLLED="yes"

    NM_CONTROLLED是network mamager的参数 ,是否可以由NNetwork Manager托管

    yes,实时生效,修改配置后无需要重启网卡立即生效,no是重启生效.

HWADDR=  

    MAC地址

TYPE=Ethernet

    类型,以太网

PREFIX=24 

    子网掩码24位

DEFROUTE=yes

    就是default route,是否把这个eth设置为默认路由

ONBOOT=yes

    设置为yes,开机自动启用网络连接

IPADDR=

    IP地址

BOOTPROTO=none

    设置为none禁止DHCP,设置为static启用静态IP地址,设置为dhcp开启DHCP服务

NETMASK=255.255.255.0

    子网掩码

DNS1=8.8.8.8

    第一个dns服务器

BROADCAST

    广播地址

UUID

    唯一标识

TYPE=Ethernet

    网络类型为:Ethernet

BRIDGE=

    设置桥接网卡

GATEWAY=

    设置网关

DNS2=8.8.4.4 #

    第二个dns服务器

IPV6INIT=no 

    禁止IPV6

USERCTL=no

    是否允许非root用户控制该设备,设置为no,只能用root用户更改

NAME="System eth1"

    这个就是个网络连接的名字

MASTER=bond1

    指定主的名称 

SLAVE

    指定了该接口是一个接合界面的组件。

NETWORK

    网络地址

ARPCHECK=yes

    检测

PEERDNS

    是否允许DHCP获得的DNS覆盖本地的DNS

PEERROUTES

    是否从DHCP服务器获取用于定义接口的默认网关的信息的路由表条目

IPV6INIT

    是否启用IPv6的接口。

IPV4_FAILURE_FATAL=yes

    如果ipv4配置失败禁用设备

IPV6_FAILURE_FATAL=yes

    如果ipv6配置失败禁用设备

通过这种方法进行设置以后,网络配置并没有生效,我们同样需要执行 /etc/rc.d/init.d/network restart | service network restart 命令才会生效
http://blog.csdn.net/qk_zhu/article/details/6273425
4、配置DNS

vi /etc/resolv.conf

nameserver 1.2.4.8

4.1、配置ip地址文件 /etc/sysconfig/network-scripts/ifcfg-eth0

添加一行

DNS1=8.8.8.8    #手动添加一个dns地址;

DNS配置文件/etc/resolv.conf 的地址会自动匹配手动添加的地址;重启网卡后不会清除;

4.2、手动添加dns地址    DNS配置文件 /etc/resolv.conf 

nameserver 192.168.1.17

配置ip地址文件 /etc/sysconfig/network-scripts/ifcfg-eth0

添加

PEERDNS=no    #添加后不会去打扰 /etc/resolv.conf 文件

DHCP环境下,在/etc/resolv.conf 手动添加dns地址后,重启网卡,会自动清除;添加到/etc/sysconfig/network-scripts/ifcfg-eth0的dns地址不会清除;

静态配置IP的环境下,/etc/resolv.conf 手动添加dns地址,重启后不会清除;

5、配置网关

vi /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=localhost.localdomain

GATEWAY=192.168.0.1

四、IP别名(网卡绑定多个IP)

在Linux系统中,我们可以在一块物理网卡上配置多个IP地址,以此来实现类似子接口的功能,我们称之为IP别名。当然在其他操作系统上,比如windowns、mac os上也支持在一块物理网卡配置多个IP地址。比如说我们的Linux主机作为一个DHCP服务器,它可能要为不同的网段分配多个IP地址,在Linux系统中,我们通过IP别名来实现在一块物理网卡上配置多个IP地址。

【注意:】要使用IP别名来配置多个IP地址,我们首先需要关闭NetworkManager服务

在CentOS或者RHEL上,都默认会启用NerworkManager这个服务来对网卡进行管理,NetworkManager服务其实就是我们操作系统右上方那两个小电脑图标,我们在图形化界面可以点击那个来指定使用哪块网卡,但是我们如果需要使用IP别名,就必须要禁用掉这个服务

[root@xiaoluo ~]# service NetworkManager stop

Stopping NetworkManager daemon:                            [  OK  ]  // 停掉我们的NetworkManager服务,此时我们可以发现右上角那个图标就不见了

[root@xiaoluo ~]# chkconfig NetworkManager off  //  NetworkManager这个服务默认会开机启动,所以我们将其设置成开机不启动

[root@xiaoluo ~]# chkconfig --list | grep NetworkManager

NetworkManager     0:off    1:off    2:off    3:off    4:off    5:off    6:off

在停掉NetworkManager服务以后我们就可以使用IP别名技术来配置多个IP地址了,这里我们使用 ip 这个命令,命令语法格式如下:

ip addr add 172.25.215.40/24 dev etho label eth0:0

后面的eth0:0 表示,我们给eth0这块网卡增加一个IP别名,后面那个0表示别名号,第二个别名就可以写成 eth0:1

我们首先通过 ifconfig 命令来查看我们当前网卡的信息

[root@xiaoluo ~]# ifconfig

eth0      Link encap:Ethernet  HWaddr 08:00:27:D7:F8:84  

          inet addr:172.25.215.40  Bcast:172.25.215.255  Mask:255.255.255.0

          inet6 addr: fe80::a00:27ff:fed7:f884/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:5801 errors:0 dropped:0 overruns:0 frame:0

          TX packets:2011 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:819876 (800.6 KiB)  TX bytes:2288399 (2.1 MiB)

lo        Link encap:Local Loopback  

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:16436  Metric:1

          RX packets:167 errors:0 dropped:0 overruns:0 frame:0

          TX packets:167 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0 

          RX bytes:14861 (14.5 KiB)  TX bytes:14861 (14.5 KiB)

 

此时我们的eth0网卡信息就会显示出来,我们此时通过ip命令来给eth0添加一个IP别名

[root@xiaoluo ~]# cd /etc/sysconfig/network-scripts/

[root@xiaoluo network-scripts]# ls

ifcfg-eth0   ifdown-isdn    ifup-aliases  ifup-plusb     init.ipv6-global

ifcfg-lo     ifdown-post    ifup-bnep     ifup-post      net.hotplug

ifdown       ifdown-ppp     ifup-eth      ifup-ppp       network-functions

ifdown-bnep  ifdown-routes  ifup-ippp     ifup-routes    network-functions-ipv6

ifdown-eth   ifdown-sit     ifup-ipv6     ifup-sit

ifdown-ippp  ifdown-tunnel  ifup-isdn     ifup-tunnel

ifdown-ipv6  ifup           ifup-plip     ifup-wireless

[root@xiaoluo network-scripts]# vi ifcfg-eth0:0

DEVICE=eth0:0    // 设备名字

IPADDR=172.25.215.31  //  IP地址

PREFIX=24  // 前缀是24,其实就是相当于子网掩码有24位

ONPARENT=yes  //  eth0:0是eth0的IP别名,yes表示附属于eth0

通过添加上述的配置文件,我们的IP别名信息就能永久保存了。

五、多网卡绑定

为什么要使用多网卡绑定技术呢?我们知道如果使用一块网卡进行网络数据传输时其速度是有限的,即使是千兆网卡,其速度也是有限制的,我们为了提高带宽,我们可以将多块物理网卡绑定成一块逻辑网卡,这样网卡的速率就是多块网卡的速率了。

Linux支持将多块物理网卡绑定成一块逻辑网卡,绑定后的逻辑网卡可以并行使用组成其的所有物理网卡,通过这样的方式可以提高带宽以及网路的稳定性

我们在将多块物理网卡绑定成一块逻辑网卡以后,我们的IP地址就要求配置在这块逻辑网卡上了,而非多块物理网卡

Linux下支持三种模式的网卡绑定:

①模式0:平衡轮训  使用这种模式来进行多网卡绑定时我们可以提高网络的带宽,其流量是从绑定的多块网卡上平均分配的

②模式1:主动备份  使用这种模式来进行多网卡绑定时我们可以提高网络的稳定性,这种模式不会提高网络的带宽,每次只有一块网卡在走流量,只有当这块网卡发生故障时,绑定在一起的其它物理网卡才会工作

③模式3:广播模式  这种模式一般都不用

我们如果想通过多网卡绑定来提升网络的带宽,就选择模式0,如果想提高网络的稳定性,则选择模式1

下面我们来看看如何进行网卡绑定的配置

①网卡绑定以后我们需要给我们的逻辑网卡取一个名字,通常格式为 bondn,n代表的是编号,如 /dev/bond0, /dev/bond1

②然后我们需要在 /etc/sysconfig/network-scripts 这个目录下创建该逻辑网卡的配置文件,如:

/etc/sysconfig/network-scripts/ifc-bond0

[root@xiaoluo network-scripts]# vi ifcfg-bond0

DEVICE=bond0  //  设备名字

IPADDR=172.25.215.200  //  网卡ip地址

PREFIX=24  //  子网掩码24位

ONBOOT=yes  //  开机启动yes

BOOTPROTO=none  //  启动协议,因为我们是手动配置IP,所以设置成none,如果是通过DHCP动态分配,则设置成dhcp

USERCTL=no  //  关闭掉用户控制

BONDING_OPTS="mode=1 miimon=5"  //  这个是bond网卡最主要的配置,我们的bond网卡其实是根据一个叫做bonding的驱动来配置的,后面跟配置参数,这里我们使用的是模式1(主动备份)

 

因为我们要使用多网卡绑定,所以我们这里再添加一块网卡,然后根据提示就可以添加一块新网卡了,我们这里添加一块网卡eth1,使用ifconfig查看一下:

 

[root@xiaoluo network-scripts]# ifconfig

bond0     Link encap:Ethernet  HWaddr 00:00:00:00:00:00  

          inet addr:172.25.215.200  Bcast:172.25.215.255  Mask:255.255.255.0

          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1

          RX packets:0 errors:0 dropped:0 overruns:0 frame:0

          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0 

          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

eth0      Link encap:Ethernet  HWaddr 08:00:27:D7:F8:84  

          inet6 addr: fe80::a00:27ff:fed7:f884/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:1285 errors:0 dropped:0 overruns:0 frame:0

          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:221706 (216.5 KiB)  TX bytes:468 (468.0 b)

eth1      Link encap:Ethernet  HWaddr 08:00:27:F4:7D:CC  

          inet6 addr: fe80::a00:27ff:fef4:7dcc/64 Scope:Link

          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

          RX packets:1196 errors:0 dropped:0 overruns:0 frame:0

          TX packets:95 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:216126 (211.0 KiB)  TX bytes:4806 (4.6 KiB)

lo        Link encap:Local Loopback  

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:16436  Metric:1

          RX packets:73 errors:0 dropped:0 overruns:0 frame:0

          TX packets:73 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0 

          RX bytes:6330 (6.1 KiB)  TX bytes:6330 (6.1 KiB)

 

此时我们计算机里面就有两块网卡了,因为我们需要将这两块网卡绑定到bond0这个逻辑网卡中,所以我们要在两块网卡的配置文件里面添加两条语句:

MASTER=bond0  // 将这两块网卡绑定到bond0这块逻辑网卡上

SLAVE=yes  //  SLAVE=yes表示这两块网卡附属于bond0这块网卡

[root@xiaoluo network-scripts]# vi ifcfg-eth0

DEVICE=eth0

HWADDR=08:00:27:D7:F8:84

TYPE=Ethernet

UUID=2877e96e-6ddd-443b-a337-bafa7c77c6e5

ONBOOT=no

NM_CONTROLLED=yes

BOOTPROTO=none

IPV6INIT=no

USERCTL=no

MASTER=bond0

SLAVE=yes

[root@xiaoluo network-scripts]# vi ifcfg-eth1

DEVICE=eth1

BOOTPROTO=none

TYPE=Ethernet

PEERDNS=yes

IPV6INIT=no

ONBOOT=no

USERCTL=no

HWADDR=08:00:27:f4:7d:cc

MASTER=bond0

SLAVE=yes

之前说过bond0这块网卡其实是通过一个叫做 bonding 的驱动来配置的,所以我们还需要为bond0这块网卡添加驱动支持,将这个驱动添加到 /etc/modprobe.d/ 这个目录下

[root@xiaoluo network-scripts]# cd /etc/modprobe.d/

[root@xiaoluo modprobe.d]# ls

anaconda.conf   blacklist-visor.conf  dist.conf      openfwwf.conf

blacklist.conf  dist-alsa.conf        dist-oss.conf

这个文件夹下放的都是我们系统所需驱动的配置文件,我们这时需要给我们的bonding添加一个名字为 bonding.conf 的配置文件

 

[root@xiaoluo modprobe.d]# vi bonding.conf

alias bond0 bonding

 

此时配置好以后,我们就可以通过 ifup bond0 来启动我们的bond0网卡

[root@xiaoluo network-scripts]# ifup bond0

Active connection state: activated

Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/2

此时我们可以通过ifconfig命令来查看一下当前网卡信息:

[root@xiaoluo network-scripts]# ifconfig

bond0     Link encap:Ethernet  HWaddr 08:00:27:D7:F8:84  

          inet addr:172.25.215.200  Bcast:172.25.215.255  Mask:255.255.255.0

          inet6 addr: fe80::a00:27ff:fed7:f884/64 Scope:Link

          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1

          RX packets:8175 errors:0 dropped:0 overruns:0 frame:0

          TX packets:117 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0 

          RX bytes:1417884 (1.3 MiB)  TX bytes:6230 (6.0 KiB)

eth0      Link encap:Ethernet  HWaddr 08:00:27:D7:F8:84  

          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1

          RX packets:4131 errors:0 dropped:0 overruns:0 frame:0

          TX packets:22 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:711693 (695.0 KiB)  TX bytes:1424 (1.3 KiB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:D7:F8:84  

          UP BROADCAST RUNNING SLAVE MULTICAST  MTU:1500  Metric:1

          RX packets:4044 errors:0 dropped:0 overruns:0 frame:0

          TX packets:95 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:1000 

          RX bytes:706191 (689.6 KiB)  TX bytes:4806 (4.6 KiB)

lo        Link encap:Local Loopback  

          inet addr:127.0.0.1  Mask:255.0.0.0

          inet6 addr: ::1/128 Scope:Host

          UP LOOPBACK RUNNING  MTU:16436  Metric:1

          RX packets:81 errors:0 dropped:0 overruns:0 frame:0

          TX packets:81 errors:0 dropped:0 overruns:0 carrier:0

          collisions:0 txqueuelen:0 

          RX bytes:7226 (7.0 KiB)  TX bytes:7226 (7.0 KiB)

此时我们通过 ping 命令来ping我们外面的主机,发现已经可以正常ping通的

[root@xiaoluo network-scripts]# ping 172.25.215.25

PING 172.25.215.25 (172.25.215.25) 56(84) bytes of data.

64 bytes from 172.25.215.25: icmp_seq=1 ttl=64 time=1.78 ms

64 bytes from 172.25.215.25: icmp_seq=2 ttl=64 time=1.10 ms

64 bytes from 172.25.215.25: icmp_seq=3 ttl=64 time=1.08 ms

64 bytes from 172.25.215.25: icmp_seq=4 ttl=64 time=0.811 ms

64 bytes from 172.25.215.25: icmp_seq=5 ttl=64 time=1.17 ms

***********************************************************************************

这个时候我们的bond0网卡就已经配置成功了,它是由两块物理网卡组成的,我们可以根据需要,比如说要提高网络带宽或者提高网络稳定性来设置bond0的网卡绑定模式即可

六、关闭防火墙

1) 重启后生效 

开启: chkconfig iptables on 

关闭: chkconfig iptables off 

2) 即时生效,重启后失效 

开启: service iptables start 

关闭: service iptables stop 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: