Linux网络命令、以及配置文件
1.IP地址和网卡的关系
IP地址,是属于逻辑地址
主机的IP地址,属于Linux内核,与网卡无关。
网卡是一个硬件设备。
所以,一个网卡,可对应多个IP地址。
网卡(网络接口)
ethX(eth0,eth1,eth2…):以太网网卡,就是有线网网卡。
现在的有线网络一般都是“以太网”。
lo: 本地的回环网卡
用来做本地测试。
127.0.0.1
向lo发送的任何包,都会直接返回给发送方。
pppX(ppp0,ppp1…):点对点网络连接
网卡的定义文件:
CentOS6.x版本:
/etc/udev/rules.d/70-persistent-net.rules
CentOS5.x版本:
/etc/modprobe.conf
网络配置
3.1)查看网卡信息
显示正在使用的网卡的信息
显示所有网卡的信息
显示指定网卡的信息
补充:
子网掩码: 255.255.255.0
转换二进制:11111111.11111111.11111111.00000000
IP地址也是32位,
所以,表示,IP地址最前面的24位都是网络地址,其余的就是主机地址。
3.2)配置IP地址和子网掩码
(1)通个命令配置
立即生效,但是系统重启或则网络服务重启后,就失效。
实例:
# ifconfig eth0 192.168.0.155/24
表示,把网卡eth0的ip设置为192.168.0.155,
同时,把子网掩码设置为255.255.255.0
# ifconfig eth0 192.168.0.155/24 up
up 表示把eth0启动
# ifconfig eth0 192.168.0.155/24 down
down表示把eth0禁用
# ifconfig eth0 192.168.0.155
不设置子网掩码的位数,表示默认为24位
(2)修改配置文件
不会立即生效,需要系统重启,或重启网络服务后才生效。
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth1
-后米的是网卡的名称
DEVICE=”eth0”
BOOTPROTO=”dhcp”
HWADDR=”00:21:CC:B3:DB:38”
IPV6INIT=”yes”
IPV6_AUTOCONF=”yes”
NM_CONTROLLED=”yes”
ONBOOT=”yes”
TYPE=”Ethernet”
分析:
DEVICE 表示网卡的名称
该名称必须和这个配置文件的最后一部分(-后面的)相同
BOOTPROTO={static|none|dhcp|bootp}
注释:{},表示必须选择
[]表示可选
| 表示“或者”
static或none, 表示静态IP地址
dhcp, 就使用动态IP
就是使用DHCP协议来获取IP地址
HWADDR,表示MAC地址(硬件地址)
ONBOOT, 表示开机时,是否自动激活该网卡
USERCTL={yes|no}
表示是否允许普通用户来控制该网卡
PEERDNS={yes|no}
表示,当BOOTPROTO为dhcp时,是否接受dhcp服务器指定的DNS地址。
补充:DNS, 用来把域名解析为IP地址
如果BOOTPROTO设置为static或none,那么就还需要配置如下选项:
实例:
IPADDR=192.168.0.149
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
注意:GETWAY可以不用配置,表示使用默认网关
如果BOOTPROTO被设置为dhcp,那么以上3项无效
修改网路的配置文件后,还需要重启电脑,或重启网络服务才能生效
重启网络服务:
# /etc/init.d/network restart
重启服务后,再检查网络服务
# /etc/init.d/network status
最后,可以检查eth0的信息
# ifconfig eth0
补充:1. 网路服务
CentOS5.x版本: /etc/init.d/network [start|stop|restart|status]
注意:在CentOS6.x版本中也支持。
CentOS6.x版本:
新添加:
/etc/init.d/NetworkManager [start|stop|restart|status]
注意:CentOS6.x就可是使用network服务,也可以使用NetworkManager服务。
NetworkManager有部分功能不完善,建议使用network服务。
2. 网络配置文件
/etc/sysconfig/network
该文件定义了一些全局的网络配置。
3.3)配置路由
回顾:路由器中,维护了一张路由表
补充:Linux系统的主机,可以配置为1个路由器
或者说,Linux系统具有路由器的功能。
添加路由:
方法1(使用route命令)
就是在路由表中,添加1行。
实例:
# route
查看当前的路由表
# route add -net 10.0.0.0/8 gw 192.168.0.1
-net表示添加网络路由
表示,添加了1个路由,把目标地址为10.0.0.x的IP包,转发到网关192.168.0.1
# route add -host 172.168.1.5 gw 192.168.0.1
-net表示主机路由
添加默认路由:
# route add default gw 192.168.0.1
删除路由:
route del -net 10.0.0.0/8 gw 192.168.0.1
用法和添加路由类似,只是把add改为del即可。
删除默认路由:
route del default
方法2:(修改路由的配置文件)
编辑 /etc/sysconfig/network-scripts/route-eth0
方式1:
添加如下:
192.168.66.0/24 via 192.168.0.1
相当与命令:#route add -net 192.168.66.0/24 gw 192.168.0.1
方式2:
添加如下:
ADDRESS0=192.168.66.0
NETMASK0=255.255.255.0
GATEWAY0=192.168.0.1
ADDRESS1=192.168.67.0
NETMASK1=255.255.255.0
GATEWAY1=192.168.0.1
DNS服务器的设置
编辑 /etc/resolv.conf
添加:
nameserver 192.168.1.5
nameserver 172.16.0.9
注意,最多添加3个NDS服务器
注意:如果要使/etc/resolv.conf生效,就必须把网卡的配置文件中的PEERDNS设置为no
即, PEERDNS=”no”
配置本地的DNS解析
某李彦的ip地址为192.168.0.117
编辑/etc/hosts
添加:
192.168.0.117 www.liyan.com liyan
IP地址 域名 别名
测试:
能够ping通
也能ping通
配置主机名
1)命令方式
查看本机的主机名
默认为localhost.localdomain
把主机名设置为zhangfei
立即生效,但是重启主机后就无效了。
2)修改配置文件
HOSTNAME=liubei
注意,需要重启电脑才生效。
所以,常常修改该配置之后,再直接用命令修改。
图形化配置网络
不过,建议大家习惯使用命令方式。
新的网路配置命令ip
查看用法帮助
显示所有的网卡信息
相当与:# ifconfig -a
显示所有网卡的统计信息
相当与 # ifconfig eth0 up
给网卡eth0添加1个IP地址(10.0.0.5),掩码是255.0.0.0
给 # ip –help
查看用法帮助
显示所有的网卡信息
相当与:# ifconfig -a
显示所有网卡的统计信息
相当与 # ifconfig eth0 up
给网卡eth0添加了1个IP地址(10.0.0.5), 掩码为255.0.0.0
给网卡eth0添加了1个别名(eth0:0), 而且ip为10.0.0.155, 掩码为255.0.0.0
注意:一旦给网卡添加了别名,那么就可以通过ifconfig来查看
删除eth0的ip地址10.0.0.5, 掩码为255.0.0.0
删除eth0的别名中,所有以10开头的而且掩码为8位的ip地址。
# ip route
# ip route show
显示路由信息
# ip route add to 10.0.0.0/8 dev eth0 via 192.168.0.1
添加路由
发往网络10.0.0.0/8的包,要通过网卡eth0转发,网关为192.168.0.1
# ip route flush to 10/8
删除路由表,所有目的地址以10开头的,而且掩码地址为8位的IP路由。
9.通过配置文件来配置网卡的别名和其他信息
/etc/sysconfig/network-scripts/ifcfg-eth0:7
注意:eth0:7是eth0的别名
具体配置方法,和/etc/sysconfig/network-scripts/ifcfg-eth0的配置一致。
注意:配置文件中的DEVICE要和网卡的名称一致。