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

Linux 网络配置和管理

2014-11-05 15:12 483 查看
一、基本概念:
1、协议protocol:约定收发双方能理解的数据格式。
2、分层:将复杂任务分解为简单的任务。

3、MAC:Media Access Control介质访问控制。
二、网络类型:
1、CSMA/CD:
监听到网络空闲即立即发送信息,边发送边监听。如果监听到冲突,就立即停止发送,等待下一个空闲时间再次发送。著名的以太网就采用这种方式发送信息。
2、消息发送方式:
单工:要么只能发,要么只能收。
半双工:可以收发,但不能同时收发。
全双工:收发同时,互不影响。
3、CSMA/CD设备:
(1)、Hub:集线器,接收双方在接收信息就独占线路,可见是独占的总线模式,其他接收双方只能等待,即存在接收冲突域问题。可见效率较低。现在已经很少用Hub。
[b](2)、网桥(只有两个端口)[/b]:网桥用来分隔一个较大规模的网络,解决冲突域(同时收发)的问题。能暂存数据,内部有地址数据表格且内部有多个线路,在接收信息是临时建立一通路,接发完毕断开。可见效率较高。
[b](3)、交换机(MAC表)(多端口的网桥)[/b]:但是不能解决广播域的问题,即第一次发送数据MAC地址表无数据或MAC地址表数据老化,那么在发送数据时是向此交换机上所有端口发送的。如果多个交换机的多个网络直接连接在一起,那么广播域的问题更严重。




[b](4)、路由器(路由表)[/b]:用来隔断广播域的问题,从而解决了广播域的问题。从而实现了跨网络通信,又能有效解决广播域的问题。


[b](5)、IP地址(由网络地址和主机地址组成,共分四段。如果网络地址位长了,那么主机地址位短,所连接的主机就少;反之所连接的主机就多。):[/b]

A-大型:0 000 0000-0 111 1111:0-127,第1段为网络地址,并且规定第一位为0,其他为主机地址
1-126: 2^7个网络 每个网络中的主机:2^24-2 默认掩码:255.0.0.0 1个私有网络:10.0.0.0(这个私有网络可以连接255个主机:10.0.0.0~10.0.0.255)B-中型:10 00 0000-10 11 1111:128-191,前2段为网络地址,并且规定前两位为10,其他为主机地址
128-191 2^14个网络 每个网络中的主机:2^16-2 默认掩码:255.255.0.0 16个私有网络:172.16.0.0-172.31.0.0C-小型:110 0 0000-110 1 1111:192-223,前3段为网络地址,并且规定前三位为110,其他为主机地址
192-223 2^21个网络 每个网络中的主机:2^8-2 默认掩码:255.255.255.0 256个私有网络:192.168.0.0-192.168.255.0D、注意:
主播地址 1110 0000-1110 1111:224-239
测试网络 1111 0000-1111 1111:240-255
主机位全0:网络地址
主机位全1:广播地址
[b](6)、子网掩码:[/b]
规定对应“网络地址”子网掩码全为1,对应“主机地址”子网掩码全为0。
A类网[b]子网掩码:[/b]255.0.0.0
B类网[b]子网掩码:[/b]255.255.0.0
C类网[b]子网掩码:[/b]255.255.255.0
[b](7)、网络通讯:[/b]
A、1-4:通信,在内核空间解析完成。
物理层:物理介质如同轴电缆、光纤等,并封装前导码。
链路层:封装源mac和目标mac,实现介质访问控制。
网络层:IP数据包,封装源IP和目标IP,IP协议。路由器就工作在此层上。
传输层:并非真正意义上的传输,而是用来“标记进程即端口(0-65535)",TCP/UDP协议。
TCP:0-65535,Transimission Control Protocol,类似于打电话。
UDP:0-65535 User Datagram Protocol 用户数据包协议,类似于发信件。
Socket套接字:由IP+Port组成。
B、5-7:资源,在用户空间解析完成。
会话层:保持会话
表示层:标记资源展示。
应用层:标记资源,请求的资源,即以什么格式的文件返回给客户端。

C、TCP:有连接协议,建立的是逻辑连接。
a、建立连接:需要三次握手。
SYN=1,ACK=0
SYN=1,ACK=1
SYN=0,ACK=1
b、断开连接:需要四次断开,TCP是全双工的即双通道。
因此,断开时双方都需要发出请求等待对方确认。



4、Token Ring:令牌环网,获得令牌才能发送消息。




[b]三、网络设备:内核通过驱动来识别网络设备。[/b] 1、以太网设备:eth#,如eth0,eth1等。

2、PPP网络设备:ppp#,如ppp0,ppp1等。 3、在Dell服务器上,网络设备通常标识为:em#,如em0,em1等。 下图这台dell服务器有4块网卡:em1~em4

4、本地回环:lo



[b]四、配置主机接入TCP/IP网络:[/b]
1、IP/Netmask(掩码)。

2、路由:提供与非本地网络的主机进行通信。
主机路由:-host,目标指向主机。
网络路由:-net,目标指向网络。
默认路由也叫网关也叫下一跳:default,目标指向所有地址(0.0.0.0)。

3、DNS服务器:
主DNS服务器
备用DNS服务器

4、主机名

以上4步的详细配置,见[b]五。[/b]

五、[b]配置主机接入TCP/IP网络详解:[/b]
[b]只[b]配置IP/Netmask,此时只能完成本地网络通信。再配置路由,就可以完成跨网络通信。[/b][/b]
1、配置I[b]P/Netmask:[/b]
(1)、命令方式配置IP/Netmask:
ifconfig(ip addr,ip link),配置后立即生效,是暂时有效,但不会永久有效即关机失效。
A、#ifconfig:显示所有活动接口的相关信息。
如:#ifconfig
eth0 Link encap:Ethernet(链路层封装格式:以太网帧)
HWaddr 00:0C:29:27:38:DA (MAC地址,前三段厂商地址块,后三段设备地址块)
inet addr:192.168.127.147(IP地址) Bcast:192.168.127.255(广播地址) Mask:255.255.255.0(掩码)
inet6 addr: fe80::20c:29ff:fe27:38da/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500(最大传输单元) Metric:1
RX packets:76 errors:0 dropped:0 overruns:0 frame:0 (接收)
TX packets:87 errors:0 dropped:0 overruns:0 carrier:0(传出)
collisions:0 txqueuelen:1000
RX bytes:9410 (9.1 KiB) TX bytes:11954 (11.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: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)

B、#ifconfig Interface:仅显示指定接口的相关信息。
如ifconfig eth0:
eth0 Link encap:Ethernet HWaddr 00:0C:29:27:38:DA
inet addr:192.168.127.147 Bcast:192.168.127.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe27:38da/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:120 errors:0 dropped:0 overruns:0 frame:0
TX packets:120 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:13263 (12.9 KiB) TX bytes:15320 (14.9 KiB)
C、ifconfig Interface Address:配置地址。
如:长格式:ifconfig eth0 192.168.10.9 netmask 255.255.255.0
短格式(CIDR),掩码指定多少个1即上面的的长格式为24个1。
如:ifconfig eth0 192.168.10.9 netmask 255.255.255.0=ifconfig eth0 192.168.10.9/24

如:ifconfig eth0 10.0.0.6 netmask 255.0.0.0=ifconfig eth0 10.0.0.6/8
如:ifconfig eth0 172.16.1.6 netmask 255.255.0.0=ifconfig eth0 172.16.1.6 /16

D、ifconfig Interface {up|down}:启用|禁用Interface

[b](2)、静态配置IP,通过配置文件配置IP,配置将永久有效。[/b]与网络设备相关的服务控制脚本:它通常能读取网络的配置文件,并让其配置生效或失效等管理功能。注意:配置完成后,需执行#service network restart,使配置生效。A、配置IP、掩码、网关: a、以太网:ifcfg-eth# #vi /etc/sysconfig/network-scripts/ifcfg-eth0,内容如下: DEVICE="eth0" :此配置关联的设备,设备名要与文件名ifcfg-后的内容保持一致。 BOOTPROTO="dhcp" 引导协议,{none(手动配置)|static(手动配置)|dhcp(动态获取)|bootp(动态获取)} HWADDR="00:0C:29:27:38:DA" :MAC地址,要与真实MAC保持一致,如果不知道可省略,系统会自动配置,MAC是固化在网卡上的。 IPV6INIT="yes":是否自动初始化IPV6协议地址。 NM_CONTROLLED="yes" :是否接受NetworkManager脚本控制{yes|no} ONBOOT="yes" :是否开机自动启用此网卡{yes|no} TYPE="Ethernet" :设备类型,如Ethernet以太网,Bridge桥接,Binding绑定 UUID="80930047-c6a8-4d70-aa8d-0f876e94221d" :唯一标示,可省略,同MAC配置。 IPADDR=192.168.127.135:IP地址 NETMASK=255.255.255.0:掩码 GATEWAY=10.0.0.1:默认网关 DNS1=10.0.0.1:指定的DNS服务器地址(dns最多三个,至少要一个) USERCTL=no:是否允许普通用户启用或者禁用此网卡。 PEERDNS={yes|no} 是否允许DHCP服务分配地址时直接更新/etc/resolv.conf中的DNS服务器地址。 b、ppp:ifcfg-ppp#

[b](3)、通过TUI/GUI(图形界面,极少用)[b]静态[/b]配置IP,配置结束后会改变配置文件:[/b] 命令1:#system-config-network-tui 命令2: #setup,选择Network congiguration 也可进入[b][b](4)、[b]动态配置[/b]IP/Netmask:[/b][/b] DHCP服务器:Dynamic Host Configuration Protocol 动态主机配置协议。
[b]2、配置路由:[/b]
[b][b](1)、[/b]命令方式配置路:route(ip route),配置立即生效,是暂时有效,但不会永久有效即关机失效。[/b]
A、#route:显示路由信息。
-n:使用数字格式显示,不反解地址到主机名。

如:# route -n
Kernel IP routing table
Destination Gateway(下一跳) Genmask Flags Metric Ref Use Iface
192.168.127.0 0.0.0.0 255.255.255.0 U(U启用状态) 1 0 0 eth0
0.0.0.0 192.168.127.2 0.0.0.0 UG(G默认) 0 0 0 eth0
192.168.1.100 172.16.100.188 255.255.255.255 UGH(H主机路由)
[b]Broute add [-net|-host]:添加路由条目,有如下三种方式:[/b]
#route add -host HOST_IP gw NEXT_HOP [dev Device] 配置主机路由
#route add -net NET_ADDR/MASK gw NEXT_HOP [dev Device] 配置网络路由
#route add -net 0.0.0.0:默认路由(目标地址为任务地址). 配置默认路由
如配置网络路由:请配置路由条目,要求目标为192.168.0.0/24网络,下一跳为172.16.0.1(下一跳一定和本机地址在同一网络中,不然没跳,哈哈)
#route add -net 192.168.0.0/24 gw 172.16.0.1
如配置主机路由:请配置路由条目,要求目标为192.168.1.100主机,下一跳为172.16.100.188(下一跳一定和本机地址在同一网络中,不然没跳,哈哈)
#route add -host 192.168.1.100 gw 172.16.100.188
如配置默认路由:添加默认路由,下一跳为 172.16.100.88
#route add -net 0.0.0.0 gw 172.16.100.88=#route add default gw 172.16.100.88

[b]Croute del:删除路由。[/b]
-host HOST_IP
-net NET_ADDR/MASK
default:删除默认路由如:route del default

[b][b](2)、静态[/b]配置路由:注意:配置完成后,需执行#service network restart,使配置生效。[/b] A、以太网:route-eth#,在/etc/sysconfig/network-scripts/默认没有,需要自己创建。 如:#vi /etc/sysconfig/network-scripts/route-eth0,内容如下: 192.168.0.0/24 via 172.16.100.188 192.168.1.10 via 172.16.100.88
配置的格式1为:DEST via NEXT_HOP,如上例。 配置的格式2为:ADDRESS#=DEST NETMASKE#=Netmask GATEWAY#=Gateway 例如:那么格式1用格式2配置如下: ADDRESS0=192.168.0.0 NETMASKE0=255.255.255.0 GATEWAY0=172.6.100.188
ADDRESS1=192.168.1.10 NETMASKE1=255.255.255.255 GATEWAY1=172.16.100.88 B、ppp[b]:route-ppp#[/b]

[b]3、DNS服务器:只能通过编辑/etc/resolv.conf配置,最多三个,至少一个,配置永久有效。[/b]
#vi /etc/resolv.conf如下:
# Generated by NetworkManager
nameserver 192.168.127.2
注意:测试DNS是否配置成功命令,只要能解析就说明配置成功:
正解:#dig -t A FQDN,如#dig -t A www.baidu.com
反解:#dig -x IP,如#dig -x 74.125.203.199

[b]4、主机名配置:[/b]
(1)、动态(立即生效,但不能永久有效):#hostname HOSTNAME
(2)、静态(永久有效,但不能立即有效,需要重启服务。)
#vi /etc/sysconfig/network
NETWORKING={yes|no}本机的网络总开关,一般为yes,否则就不能上网。
HOSTNAME=www.lzf.com

六、如何实现在单接口上配置多个地址:通过网络接口别名来实现。
eth0,那么它的别名可以是eth0:#格式,如eth0:0,eth0:1,eth0:2....
1、动态配置:
如,ifconfig eth0:0 172.16.100.11/16
2、静态配置:注意:非主地址不支持使用DHCP协议获取,所以BOOTPROTO只能是none|static。
如,ifcfg-ethX:Y
DEVICE=ethX:Y
BOOTPROTO={none|static}
IPADDR=
NETMASK=
.
.

七、服务脚本:
1、服务脚本位置 :/etc/rc.d/init.d/或/etc/init.d/
注:网络服务脚本位置:/etc/init.d/network
2、多数为控制运行于后台守护进程,接收的常用参数{start|stop|restart|status}
3、配置某服务开机自动启动:chkconfig Srv_Script_Name on
4、禁止某服务开机自动启动:chkconfig Srv_Script_Name off
5、查看某服务:chkconfig --list [Srv_Script_Name]
6、调用机制:
(1)、#/etc/init.d/Script_Name {start|stop|restart|status}
(2)、#service Script_Name {start|stop|restart|status}

八、网络管理或监测的相关工具:[b]1、ping:[/b] -c(count) :指定ping的次数。如:ping -c 2 www.baidu.com[b][b]2、[/b]netstat(网络状态探测命令--因为TCP是有状态的网络链接):执行速度有点慢。[/b] -n:数字格式显示 -t:tcp协议的链接 -u:udp协议的链接 -l(listen):监听状态的链接 -a:所有状态的链接 -p:链接相关的进程 -r:显示路由表 常用组合: netstat -tan netstat -tuan netstat -tunl netstat -tnl netstat -tunlp netstat -rn,与命令route执行结果一样[b][b]3、[/b]ss:执行速度比netstat要快。[/b]-n:数字格式显示-t:tcp协议的链接-u:udp协议的链接-l(listen):监听状态的链接-a:所有状态的链接-p:链接相关的进程-e:显示扩展信息-m:显示套接字链接使用的内存信息-o state {established已建立的链接|listen 监听的链接}[b][b]4、[/b]traceroute(追踪路由)[/b]: 获取从当前主机到达目标主机所经过的路由(网关), 不过一般服务器禁止traceroute。[b][b]5、[/b]ethtool ethX:显示设备接口属性。[/b] 如:ethtool eth0 ethtool -S ethX:显示设备接口统计数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息