不可不知的网络知识与工具

Posted 成风魄郎

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不可不知的网络知识与工具相关的知识,希望对你有一定的参考价值。

不可不知的网络知识与工具

通常在开发、测试、生产上会遇到各种各样的网络问题,如何快速定位问题,需要了解相关知识,掌握相关工具。

1、私有IP的地址

       私有IP就是在本地局域网上的IP,与之对应的是公有IP。由于我们目前使用的IPv4协议的限制,现在IP地址的数量是有限的。这样,我们就不能为居于互联网中的每一台计算机分配一个公网IP。所以,在局域网中的每台计算机就只能使用私有IP地址了。私有IP地址是一段保留的IP地址,只是使用在局域网中,在Internet上是不使用的。我们可以根据需要来选择适当的私有IP的地址类,在内部局域网中将这些地址像公用IP地址一样地使用。私有IP的地址范围如下:

A类: 10.0.0.0 - 10.255.255.255

B类: 172.16.0.0 - 172.31.255.255

C类: 192.168.0.0 - 192.168.255.255

 

2、访问网站基本流程(主要解释DNS)

 

 

(1). 输入网址(www.demo.com.)

(2). 访问本地hosts

(3). 访问本地hosts DNS缓存

(4). 访问LDNS(local dns),配置网关对应的地址

(5). 先访问根域DNS(全球13台)

(6). 访问com对应的服务器

(7). 访问demo对应的服务器

(8). 访问网站授权DNS服务器

(9). ·

(10). 返回给请求者机器,请求者机器缓存DNS,并访问对应服务器

(11). 对应服务器返回内容

 

3、修改主机名

Linux操作系统的hostname是一个kernel变量,可以通过hostname命令来查看本机的hostname。修改运行时Linux系统的hostname有一下方式:

(1).临时生效

    hostname newname 

(2).永久生效

    vim /etc/sysconfig/network

    HOSTNAME=newname     #主机名

4、网卡文件

在linux的发型版本CentOS中,网卡文件的地址是/etc/sysconfig/network-scripts/ifcfg-eth0,各个参数意义如下:

#指第一块网卡名称为eth0,第二块为eth1

DEVICE=eth0                                                 #类型

TYPE=Ethernet    

 #开机网卡自启动         

ONBOOT=yes              

NM_CONTROLLED=yes

 #静态分配地址

BOOTPROTO=none

#客户端dns设置            

DNS1=8.8.8.8                

USERCTL=no

IPV6INIT=no

#mac地址,不同机器不能重复,尤其是克隆虚拟

#机或者复制网卡配置的时候

HWADDR=00:0C:20:3F:00:20    

 #这里是ip地址设置

IPADDR=10.10.1.1

#子网掩码       

NETMASK=255.255.255.0  

#网关配置,也可以命令行通过route添加删除 

GETWAY=10.0.0.254  

 

5、单网卡设置多个ip地址

#ifconfig eth0 192.167.0.1 netmask 255.255.255.0 up 

说明: 

eth0是第一个网卡,其他依次为eth1,eth* 

192.167.0.1是给网卡配置的第一个网卡配置的ip地址 

netmask 255.255.255.0 配置的是子网掩码 

up是表示立即激活 

将eth0改为eth0:x(x是0-255例如eth0:0或者eth0:1等等),eth0:x称为虚拟网络接口,是建立在网络接口(eth0)上边,所以给单网卡配置多ip的方法就是使用命令: 

#ifconfig eth0:0 192.167.0.1 netmask 255.255.255.0 up 

#ifconfig eth0:1 192.167.0.2 netmask 255.255.255.0 up 

 

6、修改默认网关

 

即时生效 :route add default gw 192.167.1.1

重启生效: vim /etc/sysconfig/network  --增加或修改下面一行 GATEWAY=192.167.1.1

 

 

7、查看网关

执行route -n命令

技术分享

最后一条为默认网关,所有规则都不符合的时候就走默认网关。

 

8、查看DNS解析

一般用法为dig www.baidu.com。

比如对网站域名www.baidu.com 的trace查询可以看到根域、域名权威服务器的地址及其各自的返回结果,这样对于追踪dns解析中的问题有很大的帮助。

技术分享

如果系统中没有安装dig,在CentOS下可以执行以下命令安装:yum install bind-utils

 

9、跟踪路由

一般用法为traceroute www.baidu.com。

 

技术分享

如果系统中没有安装dig,在CentOS下可以执行以下命令安装:yum install traceroute

 

10、抓包工具

tcpdump是一个用于截取网络分组,并输出分组内容的工具。tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。

技术分享

 

10、网络不通检查思路

(1). 物理链路是否通

(2). 本机ip,路由,DNS的设置情况是否达标

(3). 测试到网关或路由器的通畅情况,先测网关然后测路由器

(4). 测试ping公网ip的通畅情况

(5). 测试DNS的通畅

 技术分享

 

 

以上是关于不可不知的网络知识与工具的主要内容,如果未能解决你的问题,请参考以下文章

架构设计中不可不知的网络基本知识

开发成长之路(21)-- 不可不知的操作系统知识

开发成长之路(21)-- 不可不知的操作系统知识

开发成长之路(22)-- 不可不知的操作系统知识

开发成长之路(22)-- 不可不知的操作系统知识

3个不可不知的辅助测试Fiddler小技巧!