开发者社区> 余二五> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Linux网络配置

简介:
+关注继续查看

 

    Linux主机在局域网或者互联网上通信的时候,需要设置IP地址,网关,DNS,路由等相关属性。在Linux中这些设置有2种方式:

  • 命令行设置

    此设置会立即生效,但系统重新登录后不会生效。

  • 配置文件设置

    此设置不会立即生效,但系统再次登录后会生效,所谓永久生效。


    以下所有设置均以CentOS6系列为例:


一、设置主机名

临时设置:

    hostname [USER_NAME] 

1
2
3
4
5
6
7
8
# hostname 直接使用就是查看当前系统的主机名
[root@server ~]# hostname 
server.example.com
# hostname USER_NAME 如果后面有用户名则是修改当前系统的主机名
[root@server ~]# hostname alex.example.com
[root@server ~]# hostname 
alex.example.com
[root@server ~]#

永久设置:

    配置文件的路径是:/etc/sysconfig/network,如下:

1
2
3
4
5
6
# 这个文件是Linux网络的“总开关”,像网关,DNS等属性都可以在这里设置
[root@server ~]# cat /etc/sysconfig/network
# 这个选项是是否启动网络服务,如果是 no 即使你的其他配置都正确,也不能上网
NETWORKING=yes
# HOSTNMAE 关键字就是设置主机名的,设置格式如下:
HOSTNAME=server.example.com


二、设置主机的IP地址

临时设置:

    ifconfig [options] [IFNMAE [IP netmask MASK]]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# ifconfig 查看当前处于激活状态的网卡配置信息
# ifconfig -a 查看系统中所有的网卡配置信息
[root@server ~]# ifconfig 
eth0      Link encap:Ethernet  HWaddr 00:0C:29:9E:A3:0E  
          inet addr:172.16.9.10  Bcast:172.16.255.255  Mask:255.255.0.0
          inet6 addr: fe80::20c:29ff:fe9e:a30e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:273411 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2495 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:17152580 (16.3 MiB)  TX bytes:297433 (290.4 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:6 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:330 (330.0 b)  TX bytes:330 (330.0 b)
           
# ifconfig DEVICE  查看系统中特定网卡配置信息
[root@server ~]# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:0C:29:9E:A3:0E  
          inet addr:172.16.9.10  Bcast:172.16.255.255  Mask:255.255.0.0
          inet6 addr: fe80::20c:29ff:fe9e:a30e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:273444 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2510 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:17155146 (16.3 MiB)  TX bytes:299847 (292.8 KiB)
         
[root@server ~]# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:0C:29:9E:A3:18  
          inet addr:172.16.9.18  Bcast:172.16.255.255  Mask:255.255.0.0
          inet6 addr: fe80::20c:29ff:fe9e:a318/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:704 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:60911 (59.4 KiB)  TX bytes:1468 (1.4 KiB)
 
# 临时修改网卡的IP地址,修改完成时候会立即生效
# ifconfig eth1 192.168.0.55/24 up中的up是启用网卡,如果不启用可以使用down
# 启动和关闭一个网卡,例如:启动eth1网卡
#  igconfig eth1 up
#  或者 ifup  eth1 (ifdown eth1 关闭)
[root@server ~]# ifconfig eth1 192.168.0.55/24 up
[root@server ~]# ifconfig eth1
eth1      Link encap:Ethernet  HWaddr 00:0C:29:9E:A3:18  
          inet addr:192.168.0.55  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe9e:a318/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:844 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:72758 (71.0 KiB)  TX bytes:1468 (1.4 KiB)
 
[root@server ~]
 
# ifconfig设置网卡别名
[root@server ~]# ifconfig eth1:0 192.168.0.58/24 up
[root@server ~]# ifconfig eth1:0
eth1:0    Link encap:Ethernet  HWaddr 00:0C:29:9E:A3:18  
          inet addr:192.168.0.58  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 
[root@server ~]#

 

永久设置:

    配置文件在 /etc/sysconfig/network-scripts/ 目录下:每个网卡对应一个配置文件(包括网卡别名的) ifcfg-IFNAME。例如:eth0网卡的配置文件是 ifcfg-eth0。

    这个配置文件中的一些关键字和意义如下:

  • DEVICE=IFNAME 此配置文件所关联到的设备,设备名称要与本文件名ifcfg-后面保持一致

  • BOOTPROTO={bootp|dhcp|static|none} IP地址配置协议,常用的是dhcp和none(static)

  • HWADDR=11:22:33:44:55:66  当前设备的MAC地址,用六个字节标识

  • NM_CONTROLLED={yes|no} 是否接受NetworkManager服务脚本来配置此设备,CentOS6建议关闭,因为其不支持桥接模式。CentOS7中已经支持。 

  • ONBOOT={yes|no} 是否在开机过程中,自动激活此接口

  • TYPE={Ethernet|Bridge} 网络接口类型

  • UUID= 设备标识号

  • IPADDR=IP地址    设定IP地址,只有在BOOTPROTO={none|static}设置才有效

  • NETMASK=   掩码地址,此设置也可用 PREFIX=n (n为掩码位数)

  • GATEWAY=    网关地址,要与IP地址属于同一网段

  • DNS1=    DNS服务器地址地址

  • DNS2=

  • IPV6INIT={yes|no} 是否支持IPV6

  • USERCTL={yes|no} 是否允许普通用控制此接口

  • PEERDNS={yes|no} 不接受DHCP服务器指派的DNS服务器地址

    要想永久设置有效的话,将这些信息写到对应网卡的配置文件中,然后重新启动网络服务即可,/etc/init.d/network restart。


三、设置路由信息

临时设置:

    使用route [options] [add|del] [-net|-host IP gw NEXT_HOP] [dev DEVICE]命令设置。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# 查看路由表
[root@server ~]# route 
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
link-local      *               255.255.0.0     U     1002   0        0 eth0
link-local      *               255.255.0.0     U     1003   0        0 eth1
172.16.0.0      *               255.255.0.0     U     0      0        0 eth0
172.16.0.0      *               255.255.0.0     U     0      0        0 eth1
default         server.magelinu 0.0.0.0         UG    0      0        0 eth0
# route -n 以数字形式显示路由表
[root@server ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 eth1
172.16.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth0
172.16.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth1
0.0.0.0         172.16.0.1      0.0.0.0         UG    0      0        0 eth0
 
# 增加一条主机路由
[root@server ~]# route add -host 172.16.9.18 gw 172.16.0.1 dev eth0
# 增加一条网络路由
[root@server ~]# route add -net 10.0.0.0/8 gw 172.16.0.1 dev eth0
[root@server ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
172.16.9.18     172.16.0.1      255.255.255.255 UGH   0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 eth1
172.16.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth0
172.16.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth1
10.0.0.0        172.16.0.1      255.0.0.0       UG    0      0        0 eth0
0.0.0.0         172.16.0.1      0.0.0.0         UG    0      0        0 eth0
 
# 设置默认路由
# route add default gw NEXT_HOP
 
# 删除主机路由和网络路由
[root@server ~]# route del -net 10.0.0.0/8  dev eth0
[root@server ~]# route del -host 172.16.9.18  dev eth0
[root@server ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 eth1
172.16.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth0
172.16.0.0      0.0.0.0         255.255.0.0     U     0      0        0 eth1
0.0.0.0         172.16.0.1      0.0.0.0         UG    0      0        0 eth0


永久生效:

    配置文件在 /etc/sysconfig/network-scripts/ 目录下:每个网卡的路由信息对应一个配置文件(包括网卡别名的) route-IFNAME。例如:eth0网卡的配置路由文件是 route-eth0。

    设置格式:

    配置文件的格式1:每行一个路由条目

        DESTINATION via NETX_HOP

1
192.168.0.0/24 via 172.16.0.1

    配置文件格式2: 每三行一个路由条目

        ADDRESS#=DESTINATION

        NETMASK#=MASK

        GATEWAY#=GW

1
2
3
4
# 要是设置主机路由的话,掩码位数是32位
ADDRESS0=192.168.0.0
NETMASK0=255.255.0.0
GATEWAY=172.16.0.1


四、ip命令

    ip的命令功能比较强大。

ip命令常用选项:

ip link : 管理接口

        show [IFNAME]

        set IFNAME {up|down}

wKiom1PGZ0XyyyLbAAQtfwB6iNo381.jpg

ip addr: 管理协议地址

    ip addr {show|flush} [dev DEVICE] 查看网卡的IP地址

wKiom1PGaGqRFXHjAAK_RAHksFs558.jpg

    ip addr {add|del} ADDRESS dev DEVICE  [label IFALIAS] [broadcast BCAST_ADDRESS],为一个网卡添加多个IP地址

wKiom1PGacjj4KubAAGAw7rhnjk966.jpg

    

ip route: 管理路由:

    ip route list

wKiom1PGbKGjyMWOAAH8wWVbb6M981.jpg

    ip route flush 

    ip route add DESTINATION [via NEXT_HOP] [src SOURCE_ADDRESS] [dev DEVICE]

wKioL1PGbp_C79KYAAEiSrgmFPA473.jpg

    ip route del DESTINATION

wKiom1PGbZ_y73bhAAEnaxH-tY0475.jpg

    

    ip命令还有其他子命令,读者可自行查阅 man 手册。


五、网络管理工具


测试网络的连通属性:

    ping 命令,实现的ICMP协议

    常用参数:

        -W timeout: 一个报文等待响应报文的超时时长

        -c #:报文个数

        -w time:一共持续的时间

wKioL1PGcUiAvsipAAFhFsSeUqs175.jpg


追踪网络路由:

    就是显示出我们到达一个网络所经过的路由信息。常用的命令有traceroute 和 mtr。

wKioL1PGfLXx5y37AAKSgvbSSDI435.jpg

    mtr命令式实时监测显示的:

wKioL1PGfbmyqVNuAAIbIfEpKWk819.jpg


查看网络状态:

    常用命令是:netstat和ss。

    netstat常用选项:

        -t: tcp协议相关

        -u: udp协议相关

        -n: 显示数字格式的地址

        -l: listen,显示处于监听状态的连接

        -p: 显示会话中的进程程序名及进程号

wKioL1PGgZ2hdkFEAANkypmp-Fg940.jpg

         -a: 所有状态的连接

wKiom1PGgPnAFIRTAASd_w7bd1w444.jpg

        -r: routing,显示路由表

wKiom1PGf53BZJNGAAEpoTvB4wY426.jpg


    ss命令也可以显示这些状态:

    常用选型:

        -t: tcp相关

        -u: udp相关

        -p: 显示进程号

        -l: listen,显示处于监听状态的连接

        -n: 显示数字格式的地址

        -m: 套接字相关的内存使用信息

wKioL1PGhHDw3UUlAAITPGYUB90227.jpg

        -a: all

        -e: 扩展信息

        -o state {established,fin_wait_1, fin_wait_2, listening}

        '( dport =   or sport =  )'

        只显示指定状态的连接,还可以指定过滤条件

wKiom1PGhtKhUDxWAAEX4TsUcVk012.jpg


显示网络接口设备的属性信息:

    ethtool:查看网路接口设备本身的属性

wKioL1PGiJzD4lWfAAIaN8RQU2U692.jpg


    本文主要介绍主机名,ip地址,路由的查看与设置、网路管理的工具。对于网络知识原理的部分没有深入讲解,对于原理不懂的读者可自行查阅相关资料。










本文转自 羊木狼 51CTO博客,原文链接:http://blog.51cto.com/guoting/1439144,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
常用LINUX配置及SHELL命令集锦-网络配置和系统管理操作
常用LINUX配置及SHELL命令集锦-网络配置和系统管理操作
0 0
纯ipv6的linux服务器网络配置方案
纯ipv6的linux服务器网络配置方案
0 0
linux主机模式(Host-Only)的网络配置
linux主机模式(Host-Only)的网络配置
0 0
Linux桥接模式的网络配置
Linux桥接模式的网络配置
0 0
Linux网络服务之网络配置与测试(下)
1 查看网络配置 1.1 ifconfig——查看网络接口信息 ifconfig命令来自于net-tools包 (图形化界面已安装,而最小化界面是没有的。需要自己安装) :
0 0
Linux网络服务之网络配置与测试(中)
1 查看网络配置 1.1 ifconfig——查看网络接口信息 ifconfig命令来自于net-tools包 (图形化界面已安装,而最小化界面是没有的。需要自己安装) :
0 0
Linux网络服务之网络配置与测试(上)
1 查看网络配置 1.1 ifconfig——查看网络接口信息 ifconfig命令来自于net-tools包 (图形化界面已安装,而最小化界面是没有的。需要自己安装) :
0 0
Linux网络配置+yum、rpm与源码安装 | 学习笔记4
Linux网络配置以及yum、rpm与源码安装的讲解
0 0
Linux 网络配置对应的文件|学习笔记
快速学习 Linux 网络配置对应的文件
0 0
(*长期更新)软考网络工程师学习笔记——Section 13 Linux网络配置命令
(*长期更新)软考网络工程师学习笔记——Section 13 Linux网络配置命令
0 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
Decian GNU/Linux安全合规之路
立即下载
从 Linux 系统内核层面来解决实际问题的实战经验
立即下载
冬季实战营第二期:Linux操作系统实战入门
立即下载