网络介绍

LINUX 网络配置

一些配置文件:

/etc/services:服务名称和端口配置文件

/etc/hosts  :最早主机名对应ip的配置文件

/etc/resolv.conf: 本机DNS解析ip记录文件

/etc/nsswitch.conf :这个档案则是在『决定』先要使用 /etc/hosts 还是 /etc/resolv.conf 的设定!

1: host: 这个指令可以用来查出某个主机名的 IP 喔!举例来说,我们想要知道 www.baidu.com 的 IP 时,可以这样做:

host -a www.baidu.com

host -a -v www.baidu.com

-a:显示所有DNS信息

-v:显示指定详细信息

查的原理是根据本机/etc/resolv.conf里指定的DNS的ip 解析出来的

2:nslookup命令是常用域名查询工具,就是查DNS信息用的命令。

nslookup有两种工作模式,即“交互模式”和“非交互模式”。

在“交互模式”下,用户可以向域名服务器查询各类主机、域名的信息,或者输出域名中的主机列表。进入交互模式,直接输入nslookup命令,不加任何参数,则直接进入交互模式

而在“非交互模式”下,用户可以针对一个主机或域名仅仅获取特定的名称或所需信息。

# nslookup www.baidu.com

此时nslookup会连接到默认的域名服务器(即/etc/resolv.conf的第一个dns地址)

3:dig

dig [options] FQDN [@server]

选项与参数:

@server :如果不以 /etc/resolv.conf 的设定来作为 DNS 查询,可在此填入其他的 IP

options:相关的参数很多,主要有 +trace, -t type 以及 -x 三者最常用

+trace :就是从 . 开始追踪,

-t type:查询的数据主要有 mx, ns, soa 等类型

-x     :查询反解信息,非常重要的项目!

[[email protected] ~]# dig linux.vbird.org

; <<>> DiG 9.7.0-P2-RedHat-9.7.0-5.P2.el6_0.1 <<>> linux.vbird.org

;; global options: +cmd

;; Got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37415

;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:     <==提出的问题的部分

;linux.vbird.org.               IN      A

;; ANSWER SECTION:       <==主要的回答阶段

linux.vbird.org.        600     IN      A       140.116.44.180

;; AUTHORITY SECTION:    <==其他与此次回答有关的部分

vbird.org.              600     IN      NS      dns.vbird.org.

vbird.org.              600     IN      NS      dns2.vbird.org.

;; Query time: 9 msec

;; SERVER: 168.95.1.1#53(168.95.1.1)

;; WHEN: Thu Aug  4 14:12:26 2011

;; MSG SIZE  rcvd: 86

# dig linux.vbing.org @114.114.114.114

# dig linux.vbird.org

# dig -t soa linux.vbird.org

反解:

# dig -x 120.114.100.20

QUESTION(问题):显示所要查询的内容,因为我们是查询 linux.vbird.org 的 IP,所以这里显示 A (Address);

ANSWER(回答):依据刚刚的 QUESTION 去查询所得到的结果,答案就是回答 IP 啊!

AUTHORITY(验证):由这里我们可以知道 linux.vbird.org 是由哪部 DNS 服务器所提供的答案! 结果是 dns.vbird.org 及 dns2.vbird.org 这两部主机管理的。另外,那个 600 是啥咚咚?图 19.1-4 提到过的流程,就是允许查询者能够保留这笔记录多久的意思 (快取),在 linux.vbird.org 的设定中,预设可以保留 600 秒。

-------------------------------------------------------------------------------------------------------------------------------

# cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0   网卡名

HWADDR=00:0c:29:dd:83:d4  网卡的MAC地址,些地址与网卡设备ROM中固定的地址保持一至

TYPE=Ethernet

ONBOOT=yes                 些设备是否随OS启动而激活

NM_CONTROLLED=yes          MM即NetworkManger 的简写,建议设定为no

BOOTPROTO=static             引导协议:{none|static|dhcp|bootp}

手动  静态  动态  动态

NETMASK=255.255.255.0

IPADDR=192.168.2.24

GATEWAY=192.168.2.1

USERCTL=no                 是否允许普通用户管理接口,no为不

PEERDNS=yes                是否允许DHCP服务器提供的DNS服务器地址覆盖本地/etc/resolv.conf 文件

IPV6INIT=no                是否使用IPV6

IPV6_AUTOCONF=yes          自动配置IPV6

配置域名解析文件

[[email protected] ~]# cat /etc/resolv.conf

; generated by /sbin/dhclient-script

nameserver 192.168.1.1

nameserver 192.168.2.1

下面命令可以取出ip

# ifconfig eth0 | grep "inet addr"|awk -F[:" "]+ ‘{print $4}‘

192.168.2.100

# ifconfig {interface} {up|down}  <== 观察与启动接口

# ifconfig interface {options}    <== 设定与修改接口

选项与参数:

interface:网络卡接口代号,包括 eth0, eth1, ppp0 等等

options  :可以接的参数,包括如下:

up, down :启动 (up) 或关闭 (down) 该网络接口(不涉及任何参数)

mtu      :可以设定不同的 MTU 数值,例如 mtu 1500 (单位为 byte)

netmask  :就是子屏蔽网络;

broadcast:就是广播地址啊!

# ifconfig eth0 192.168.100.100 netmask 255.255.255.128

--------------------------------------------------------------------------------------------------------

ifup, ifdown

实时的手动修改一些网络接口参数,可以利用 ifconfig 来达成,如果是要直接以配置文件, 亦即是在 /etc/sysconfig/network-scripts 里面的 ifcfg-ethx 等档案的设定参数来启动的话, 那就得要透过 ifdown 或 ifup 来达成了

# ifup eth0

# ifup down

----------------------------------------------------------------------------------------------------------------

# route [-nee]

# route add [-net|-host] [网域或主机] netmask [mask] [gw|dev]

# route del [-net|-host] [网域或主机] netmask [mask] [gw|dev]

观察的参数:

-n  :不要使用通讯协议或主机名,直接使用 IP 或 port number;

-ee :使用更详细的信息来显示

增加 (add) 与删除 (del) 路由的相关参数:

-net    :表示后面接的路由为一个网域;

-host   :表示后面接的为连接到单部主机的路由;

netmask :与网域有关,可以设定 netmask 决定网域的大小;

gw      :gateway 的简写,后续接的是 IP 的数值喔,与 dev 不同;

dev     :如果只是要指定由那一块网络卡联机出去,则使用这个设定,后面接 eth0 等

Destination, Genmask:这两个玩意儿就是分别是 network 与 netmask 啦!所以这两个咚咚就组合成为一个完整的网域啰!

Gateway:该网域是通过哪个 gateway 连接出去的?如果显示 0.0.0.0 表示该路由是直接由本机传送,亦即可以透过局域网络的 MAC 直接传讯;如果有显示 IP 的话,表示该路由需要经过路由器 (通讯闸) 的帮忙才能够传送出去。

Flags:总共有多个旗标,代表的意义如下:

U (route is up):该路由是启动的;

H (target is a host):目标是一部主机 (IP) 而非网域;

G (use gateway):需要透过外部的主机 (gateway) 来转递封包;

R (reinstate route for dynamic routing):使用动态路由时,恢复路由信息的旗标;

D (dynamically installed by daemon or redirect):已经由服务或转 port 功能设定为动态路由

M (modified from routing daemon or redirect):路由已经被修改了;

! (reject route):这个路由将不会被接受(用来抵挡不安全的网域!)

Iface:这个路由传递封包的接口。

-----------------------------------------------------------------------

traceroute [选项与参数] IP

选项与参数:

-n :可以不必进行主机的名称解析,单纯用 IP ,速度较快!

-U :使用 UDP 的 port 33434 来进行侦测,这是预设的侦测协议;

-I :使用 ICMP 的方式来进行侦测;

-T :使用 TCP 来进行侦测,一般使用 port 80 测试

-w :若对方主机在几秒钟内没有回声就宣告不治...预设是 5 秒

-p 埠号:若不想使用 UDP 与 TCP 的预设埠号来侦测,可在此改变埠号。

-i 装置:用在比较复杂的环境,如果你的网络接口很多很复杂时,才会用到这个参数;

举例来说,你有两条 ADSL 可以连接到外部,那你的主机会有两个 ppp,

你可以使用 -i 来选择是 ppp0 还是 ppp1 啦!

-g 路由:与 -i 的参数相仿,只是 -g 后面接的是 gateway 的 IP 就是了。

# 范例一:侦测本机到 www.xx.com 去的各节点联机状态

[[email protected] ~]# traceroute -n www.xx.com

traceroute to www.xx.com (119.160.246.241), 30 hops max, 40 byte packets

1  192.168.1.254  0.279 ms  0.156 ms  0.169 ms

2  172.20.168.254  0.430 ms  0.513 ms  0.409 ms

3  10.40.1.1  0.996 ms  0.890 ms  1.042 ms

4  203.72.191.85  0.942 ms  0.969 ms  0.951 ms

5  211.20.206.58  1.360 ms  1.379 ms  1.355 ms

6  203.75.72.90  1.123 ms  0.988 ms  1.086 ms

7  220.128.24.22  11.238 ms  11.179 ms  11.128 ms

8  220.128.1.82  12.456 ms  12.327 ms  12.221 ms

9  220.128.3.149  8.062 ms  8.058 ms  7.990 ms

10  * * *

11  119.160.240.1  10.688 ms  10.590 ms 119.160.240.3  10.047 ms

1、记录按序列号从1开始,每个纪录就是一跳 ,每跳表示一个网关,我们看到每行有三个时间,单位是 ms,其实就是-q的默认参数。探测数据包向每个网关发送三个数据包后,网关响应后返回的时间;如果您用 traceroute -q 4 www.xx.com ,表示向每个网关发送4个数据包。

2、有时我们traceroute 一台主机时,会看到有一些行是以星号表示的。出现这样的情况,可能是防火墙封掉了ICMP的返回信息,所以我们得不到什么相关的数据包返回数据。

3、有时我们在某一网关处延时比较长,有可能是某台网关比较阻塞,也可能是物理设备本身的原因。当然如果某台DNS出现问题时,不能解析主机名、域名时,也会 有延时长的现象;您可以加-n 参数来避免DNS解析,以IP格式输出数据。

4、如果在局域网中的不同网段之间,我们可以通过traceroute 来排查问题所在,是主机的问题还是网关的问题。如果我们通过远程来访问某台服务器遇到问题时,我们用到traceroute 追踪数据包所经过的网关,提交IDC服务商,也有助于解决问题;

由于目前 UDP/ICMP 的攻击层出不穷,因此很多路由器可能就此取消这两个封包的响应功能。所以我们可以使用 TCP 来侦测呦! 例如使用同样的方法,透过等待时间 1 秒,以及 TCP 80 埠口的情况下,可以这样做:

# traceroute -n -T www.xx.com

-----------------------------------------------------------------------------------------------------------------------------------------

netstat 命令
常见参数

-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态

-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。

列出所有端口 netstat -a

列出所有 tcp 端口   netstat -at

列出所有 udp 端口    netstat -au

只显示监听端口             netstat -l

只列出所有监听 tcp 端口    netstat -lt

只列出所有监听 udp 端口    netstat -lu

只列出所有监听 UNIX 端口   netstat -lx

显示所有端口的统计信息      netstat -s

显示 TCP 或 UDP 端口的统计信息 netstat -st 或 netstat -su

显示核心路由信息   netstat -r

显示目前已经启动的网络服务   netstat -tunlp

显示目前所有已经启动的网络服务   netstat  -atunp

 

netstat  -an参数中stat(状态)的含义如下:

LISTEN:侦听来自远方的TCP端口的连接请求;
SYN-SENT:在发送连接请求后等待匹配的连接请求;
SYN-RECEIVED:在收到和发送一个连接请求后等待对方对连接请求的确认;
ESTABLISHED:代表一个打开的连接,我们常用此作为并发连接数;
FIN-WAIT-1:等待远程TCP连接中断请求,或先前的连接中断请求的确认;
FIN-WAIT-2:从远程TCP等待连接中断请求;
CLOSE-WAIT:等待从本地用户发来的连接中断请求;
CLOSING:等待远程TCP对连接中断的确认;
LAST-ACK:等待原来发向远程TCP的连接中断的确认;
TIME-WAIT:等待足够的时间以确保远程TCP连接收到中断请求的确认;
CLOSED:没有任何连接状态;

在日常工作中,我们可以用shell组合命令来查看服务器的TCP连接状态并汇总,命令如下:

netstat -an|awk ‘/^tcp/{++S[$NF]}END{for (a in S)print a,S[a]}‘

参数说明:
CLOSED: 没有连接活动或正在进行的;
LISTEN:  服务器正在等待的进入呼叫;
SYN_RECV:一个连接请求已经到达,等待确认;
SYN_SENT:应用已经开始,打开一个连接;
ESTABLISHED:正常数据传输状态,也可以近似的理解为当前服务器的并发数;
FIN_WAIT1:应用已经完成;
FIN_WAIT2:另一边同意释放;
ITMED_WAIT:等待所有分组死掉;
CLOSING:两边同时尝试关闭;
TIME_WAIT:另一边已初始化一个释放;
LAST_ACK:等待所有分组死掉;

统计 TCP连接数 命令:

netstat -an |grep ‘ESTABLISHED‘ |grep ‘tcp‘ |wc -l

[[email protected] ~]# vim /etc/security/limits.conf

*                hard    nofile  65535

*                soft    nofile  65535

/etc/rc.local

ulimit -SHn  65535   直接写入/etc/rc.local中

时间: 2024-11-07 00:04:03

网络介绍的相关文章

OpenStack网络介绍

OpenStack网络介绍     OpenStack里面的网络相对复杂.经常有人对几个网络概念搞混淆.因此,本文对OpenStack里面的Provider network 和 Tenant network 的概念及两者之间区别进行说明. 1.      Network 根据创建网络的用户的权限,Neutron network 可以分为以下两种: l  Provider network:管理员创建的和物理网络有直接映射关系的虚拟网络. l  Tenant network:租户普通用户创建的网络,

Windows Azure虚拟网络介绍和实践

Windows Azure虚拟网络主要有三方面的应用: 在windows Azure上创建私有网络,同一个云服务或处于同一个虚拟网络(Virtual Network)的同一个子网(subnet)中的虚拟机才能直接通过内网通信 将本地的网络扩展到windows azure.通过vpn设备或者vpn软件建立site to site vpn,可以把windows azure 续集 将单台计算机通过点到站点的point-to-site vpn连接到位于Windows Azure的虚拟网络上 一  .创建

五十二、linux 编程——网络介绍

52.1 网络介绍 使用远程资源 共享信息.程序和数据 分布处理 52.1.1 协议的概念 计算机网络中实现通信必须有一些约定,如对速率.传输代码.代码结构.传输控制步骤和出错控制等约定,这些约定即被称为通信协议 在两个节点之间要成功地进行通信,两个节点之间必须约定使用共同的"语言",这些被通信各方共同遵守的约定.语言.规则被称为协议 在 Internet 中,最为通用的网络协议是 TCP/IP 协议 52.1.2 网络分层模型 应用层:制定完成某些用户初始化任务的方法.应用协议通常由

zstack 扁平网络和EIP 网络介绍 (二)

ZStack作为标准IaaS软件管理计算.存储和网络三大子系统,其中网络子系统是最复杂的.用户在一个简单的单机环境中搭建IaaS,最常遇到的问题就是该搭建哪种IaaS网络模型和在搭建该模型之前该如何在单机上准备必要的网络环境.由于不当的网络环境准备,常会导致云主机的启动失败,或者启动后无法获得正确的IP地址.今天我们将会介绍如何正确的准备用于搭建IaaS系统的网络环境. 首先,让我们来简单介绍一下两种不同的IaaS网络方案:扁平网络和 EIP网络 1. 扁平网络 扁平网络是私有云环境中最常用.最

Oracle学习笔记之第五节网络介绍

<网络部分介绍> oracle数据库服务器是客户端 windows上 建两个数据库orcl用zhs16gpk和utforcl用al32utf8 服务oracleServiceORCL和oracleServiceutforcl开启 cmd oradim 帮助 lsnrctl service 1.配置监听 2.配置别名 3.配置连接时故障转移 4.控制监听器 tnsping 测试网络 linux客户端或者服务器的网络配置文件都在这个目录 /u01/app/oracle/product/11.2.0

Oracle学习笔记之第六节网络介绍及配置,会话

ps aux | grep ora_pmon 有几个数据库服务器就有几个这个进程(进程监控进程和外部打交道) vim sqlnet.ora 这个可以让数据库略微安全,让sqlplus 不能登陆 sqlnet.authentication_services=(none) conn hr/[email protected] 产生物理连接逻辑会话 host ps 查看终端是哪个 ! ps 然后通过windows的sqlplus plus 工具连接 select * from v_$session s

一、CDN网络介绍

一.概念 CDN的全称是Content DeliveryNetwork,即内容分发网络.主要包括:内容分发到CDN节点:就近为客户提供服务. 二.CDN原理 1.用户向浏览器输入www.web.com这个域名,浏览器第一次发现本地没有dns缓存,则向网站的DNS服务器请求: 2.网站的DNS域名解析器设置了CNAME,指向了www.web.51cdn.com,请求指向了CDN网络中的智能DNS负载均衡系统: 3.智能DNS负载均衡系统解析域名,把对用户响应速度最快的IP节点返回给用户: 4.用户

VMware三种网络介绍

前言 很多人安装虚拟机的时候,经常遇到不能上网的问题,而vmware有三种网络模式,对初学者来说也比较眼花聊乱,今天我就来基于虚拟机3种网络模式,帮大家普及下虚拟机上网的背景知识.(博文原创自http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646007.html) 虚拟机网络模式 无论是vmware,virtual box,virtual pc等虚拟机软件,一般来说,虚拟机有三种网络模式: 1.桥接 2.NAT 3.Host-Only 初

企业网络介绍

企业的业务在不断的发展,对网络的需求当然是不断的变化,这就要求企业具备这种不断变化的能力.因此,了解企业的网络的架构是如何适应业务的需求将变的十分必要. 什么是网络? 网络就是多个终端设备.多个传输设备与传输介质连在一起的这样的一个范围内实现通信.服务的一种应用就是称为网络. 什么是企业网络? 企业网络已经广泛应用在各行各业中,包括小型办公室.教育.政府.和银行等行业或机构.如下图: 如图中的办公楼,其中可能有好多的小公司,但是他们都有自己的办公网络,可用来实现一些技术与通信,这就是使用的是局域