代码改变世界

Linux网络配置

2012-12-17 15:57  潇湘隐者  阅读(14734)  评论(0编辑  收藏  举报

前言:下面测试只在Redhat Linux系统测试过,不见得适用于其它Linux系统。

配置动态IP


在终端命令窗口中输入setup,就会弹出如下窗口
[root@wgods ~]# setup


选择Network Configuration,点击enter进入下面界面,

 

选择Edit Devices选项进入下面界面

点击enter,选项进入下面界面,按Tab键在选项间切换,选择Use DHCP后,按下空格键,就会出现[*],然后点击OK键。注意:有时候在Name或Device选项你不小心,让eth0多了空格,就会造成配置出问题,此时你要检查一下/etc/sysconfig/network-scripts/ifcfg-eth0配置文件,才能发现问题。否则这种细节问题会让你纠结你很久的

 

配置静态IP

配置静态IP可以通过修改配置文档,重启网络配置,使其永远生效,也可用命令修改,及时生效,但是重启过后修改失效。

命令修改

[root@DB-Server ~]#ifconfig eth0 ***.***.***.*** netmask ***.***.***.*** up

其中up是让命名生效


配置修改
1:先找到设备配置文件,对于以太网第一个设备,配置文件一般命名为ifcfg-eth0,如下所示:/etc/sysconfig/network-scripts/ifcfg-eth0

[root@DB-Server network-scripts]# more ifcfg-eth0
DEVICE=eth0            --物理设置名,eth0是第一个网卡、如果有双网卡或更多,依次为eth1、eth*
IPADDR=172.20.32.93        --IP地址配置
NETMASK=255.255.248.0       --子网掩码配置
[NETWORK=***.***.***.**]     --网络地址:可选项
[BROADCAST=***.***.***.***]   --广播地址:可选项
GATEWAY=172.20.39.251      --网关配置
DNS1=172.20.0.11         --DNS服务配置
ONBOOT=yes             --引导时是否激活设备
HWADDR=50:e5:49:df:b0:8b     --物理地址
BOOTPROTO=none            --[none|static|bootp|dhcp](引导时不使用协议|静态分配|BOOTP协议|DHCP协议)
TYPE=Ethernet           --网络类型
IPV6INIT=no           --IPV6
USERCTL=no            --非root用户是否可以控制该设备

2: 修改网关配置:网关配置也可以在/etc/sysconfig/network-scripts/ifcfg-eth0中配置

[root@DB-Server sysconfig]# more /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=DB-Server
GATEWAY=172.20.39.251

3: 修改DNS配置:DNS配置也可以在/etc/sysconfig/network-scripts/ifcfg-eth0中配置

[root@DB-Server sysconfig]# more /etc/resolv.conf
nameserver 172.20.0.11

4:重新启动网络配置

4.1
[root@DB-Server ~]# service network restart #重新启动网络
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]

4.2
[root@DB-Server ~]#ifdown eth0 #关闭eth0网卡

[root@DB-Server ~]#ifup eth0 #启动eth0网卡

Determining IP information for eth0....done

4.3 方法3:使用ifconfig停启服务

[root@DB-Server ~]#ifconfig eth0 down

[root@DB-Server ~]#ifconfig eth0 up

问题锦集

1:看看网卡是否激活。如果激活可以看到IP地址
[root@m1 ~]$ifconfig eth0
eth0 Link encap:Ethernet HWaddr 50:E5:49:DF:79:1B
inet addr:172.20.32.93 Bcast:172.20.255.255 Mask:255.255.248.0
inet6 addr: fe80::52e5:49ff:fedf:791b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6723879 errors:0 dropped:0 overruns:0 frame:0
TX packets:203653 errors:0 dropped:0 overruns:0 carrier:1
collisions:0 txqueuelen:1000
RX bytes:750410997 (715.6 MiB) TX bytes:180711485 (172.3 MiB)
Interrupt:25

如果未能激活的话,可以在以下配置文件设置里,
/etc/sysconfig/network-scrips/ifcfg-eth0

如果连同网关,主机名也一同设置,还会用到/etc/sysconfig/network。

2:设置host名称

需要修改 /etc/hosts 和 /etc/sysconfig/network 两个文件,

/etc/hosts 更改主机名和IP地址对应关系
/etc/sysconfig/network 更改hostname(主机名)以及网卡工作状态
/etc/sysconfig/networking/profiles/default/hosts

例如:
172.20.32.93 DB-Server
127.0.0.1 DB-Server
很奇怪的是在/etc/sysconfig/networking/profiles/default下也有ifcfg-eth0配置文件?/etc/sysconfig/networking/devices下也有ifcfg-eth0配置文件?不知道这几个有啥区别


3:几种不同系统的重启网络服务命令

RedHat Linux command to reload or restart network (login as root user):
# service network restart
OR
# /etc/init.d/network restart
To start Linux network service:
# service network start
To stop Linux network service:
# service network stop

 

Debian Linux command to reload or restart network:
# /etc/init.d/networking restart
To start Linux network service:
# /etc/init.d/networking start
To stop Linux network service:
# /etc/init.d/networking stop
 
Ubuntu Linux user use sudo command with above Debian Linux command:
# sudo /etc/init.d/networking restart
To start Linux network service:
# sudo /etc/init.d/networking start
To stop Linux network service:
# sudo /etc/init.d/networking stop


参考资料:
http://blog.csdn.net/nashviller/article/details/6851930

http://os.51cto.com/art/201003/186930.htm

http://www.cnblogs.com/CgenJ/archive/2011/07/28/2119448.html