Linux基础介绍【第八篇】
Linux网络基础
网线
568A
568B
线序:橙白橙 绿白蓝 蓝白绿 棕白棕
交换机、路由器
交换机:DLINK、H3C、CISCO
交换机(Switch)是一种用于电信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音交换机、光纤交换机等。
路由器:CISCO
路由器(Router)是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。
OSI7层网络模型
物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
TCP/IP:
数据链路层:ARP、RARP
网络层:IP、ICMP、IGMP
传输层:TCP、UDP、UGP
应用层:Telnet、FTP、SMTP、SNMP
OSI
物理层:EIA/TIA-232、EIA/TIA-499、V.35、V.24、RJ45、Ethernet、802.3、802.5、FDDI、NRZI、NRZ、B8ZS
数据链路层:Frame Relay、HDLC、PPP、IEEE 802.3/802.2、FDDI、ATM、IEEE 802.5/802.2
网络层:IP、IPX、AppleTalk DDP
传输层:TCP、UDP、SPX
会话层:RPC、SQL、NFS、NetBIOS、names、AppleTalk、ASP、DECnet、SCP
表示层:TIFF、GIF、JPEG、PICT、ASCII、EBCDIC、encryption、MPEG、MIDI、HTML
应用层:FTP、WWW、Telnet、NFS、SMTP、Gateway、SNMP
协议
协议是通信双方为了实现通信而设计的约定或通话规则。
http协议工作原理
tcp/ip协议的三次握手四次断开。
用户上网过程原理
DHCP服务
NAT网络地址转换
私网地址:
10.0.0.0/8(10.0.0.0到10.255.255.255)
172.16.0.0/12(172.16.0.0到172.31.255.255)
192.168.0.0/16(192.168.0.0到192.168.255.255)
169.254.0.0/16(169.254.0.0到169.254.255.255)
ip地址分类
A类
1.0.0.0到126.0.0.0
0.0.0.0和127.0.0保留
B类
128.1.0.0到191.254.0.0
128.0.0.0和191.255.0.0保留
C类
192.0.1.0到223.255.254.0
192.0.0.0和223.255.255.0保留
D类
224.0.0.0到239.255.255.255用于多点广播
E类
240.0.0到255.255.255.254保留
255.255.255.255用于广播
用户访问网站的流程
DNS
DNS(Domain Name System)
oldboy.me>>>1.1.1.1过程就需要DNS解析(电脑里配置的DNS)
DNS能干什么?
A记录:oldboy.me>>>1.1.1.1
CNAME:常被CDN服务商应用
MX解析记录:[email protected]搭建邮件服务
PTR反向解析:1.1.1.1>>>邮件服务
A记录解析过程:
浏览器>>> oldboy.me>>>网站服务器的ip地址1.1.1.1>>>ip地址对应的网站服务器
DNS解析流程原理
递归查询>>>迭代查询
DNS本身是倒挂的树状结构,它的顶点也是根"."。
根服务器,全球13台服务器。
顶级域名:org、com、net、me、cc
一级域名:oldboy、baidu、sina
DNS域名解析查询
dig www.baidu.com
查看dns解析流程
[email protected] www.baidu.com +trace
nslookup
host www.baidu.com
ping www.baidu.com
配置网卡
网卡配置文件/etc/sysconfig/network-scripts/ifcfg-eth0
[root@oldboy ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 #第一块网卡逻辑设备名,第二块eth1,有些系统也会以em等字符标识
HWADDR=00:0C:29:96:43:67 #以太网硬件地址即MAC地址,如果是vmware克隆的虚拟机无法启动网卡应该删除此项
TYPE=Ethernet #上网类型,目前基本都是以太网
UUID=9b7c820b-b8ab-4c33-a7e8-c4da818b1ae2 #通用唯一标识码,如果vmware克隆的虚拟机无法启动网卡应该删除此项
ONBOOT=yes #yes表示开机自启动激活网卡设备
NM_CONTROLLED=yes #是否通过NetworkManager管理网卡设备。
BOOTPROTO=dhcp #启动协议,获取配置方式,有none、bootp、dhcp三个选项。
DNS1=8.8.8.8 #主DNS,这里默认会覆盖以及优先于/etc/resolv.conf的配置生效
DNS2=202.106.0.20 #第二个DNS,这里默认会覆盖以及优先于/etc/resolv.conf的配置生效
IPADDR=10.0.0.8 #这是虚拟机桥接模式,局域网linux服务器的固定ip。
NETMASK=255.255.255.0 #子网掩码,用来规划网络位和主机位,一般为255.255.255.0
GATEWAY=10.0.0.254 #局域网上网网关地址
IPV6INIT=no #是否支持ipv6
查看磁盘的uuid
[root@oldboy ~]# blkid
/dev/sda1: UUid="16664a83-1118-495f-af51-363c9f6fb6e0" TYPE="ext4"
/dev/sda2: UUid="54fd6fa3-c0aa-4f81-b33a-ec5224a367e4" TYPE="swap"
/dev/sda3: UUid="1c715af5-9511-4058-9d1c-6191d8ead4e2" TYPE="ext4"
网卡生效
推荐ifdown、ifup
ifdown eth0 停掉eth0网卡
ifup eth0 启动eth0网卡
针对所有网卡
/etc/init.d/network restart #所有网卡
网卡配置的DNS优先于/etc/resolv.conf的配置,重启网卡会把/etc/resolv.conf覆盖。
网卡没有配置DNS,那么在/etc/resolv.conf里配置会生效,如果有多块网卡(DHCP获取方式)时候,可能会覆盖/etc/resolv.conf里已有的配置。
修改主机名的步骤
1、hostname oldboylinux
2、vi /etc/sysconfig/network
3、vi /etc/hosts
配置默认网关
第一生效文件
[root@oldboylinux ~]# grep -i gate /etc/sysconfig/network-scripts/ifcfg-eth0
第二生效文件
[root@oldboylinux ~]# grep -i gate /etc/sysconfig/network
查看网关
[root@oldboylinux ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.31.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 192.168.31.2 0.0.0.0 UG 0 0 0 eth0
[root@oldboylinux ~]# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.31.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.31.2 0.0.0.0 UG 0 0 0 eth0
删除、添加默认网关
[root@oldboylinux ~]# route del default gw 10.0.0.254
[root@oldboylinux ~]# route add default gw 10.0.0.254
配置与查看网络信息
ifconfig查看配置别名ip等
别名IP,VIP虚拟IP
[root@oldboylinux ~]# ifconfig eth0:1 10.0.0.11/24 up
[root@oldboylinux ~]# ifconfig
eth0:1 Link encap:Ethernet HWaddr 00:0C:29:96:43:67
inet addr:10.0.0.11 Bcast:10.0.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
ifconfig eth0:x down 停掉别名ip。
ip的方式配多个ip,辅助ip。
辅助ip形式:keepalived 高可用一直都是用辅助ip
网卡重启别名ip失效,写成配置文件(/etc/sysconfig/network-scripts/ifcfg-eth0:1)。
[root@oldboylinux ~]# ip addr add 10.0.0.12/24 dev eth0:1
[root@oldboylinux ~]# ip add
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:96:43:67 brd ff:ff:ff:ff:ff:ff
inet 192.168.31.128/24 brd 192.168.31.255 scope global eth0
inet 10.0.0.12/24 scope global eth0
inet6 fe80::20c:29ff:fe96:4367/64 scope link
valid_lft forever preferred_lft forever
lsof
已知一个端口为333,如何查看端口对应的服务名?
方法一:
[root@oldboylinux ~]# lsof -i:333
方法二:
[root@oldboylinux ~]# netstat -lntup|grep 333
查看删除的但仍被进程占用的文件
[root@oldboylinux ~]# lsof |grep del
网络检查
1、ping www.baidu.com ,icmp协议,linux禁止icmp。(高速公路有没有修通)
2、traceroute www.baidu.com -n(跟踪路由)基础检查,各个高速节点有没有修通
windows跟踪路由
tracert –d www.baidu.com
3、telnet www.baidu.com 80检查服务器web有没有开启,服务有没有启动,以及防火墙有没有挡住。
nmap 10.0.0.25 -p 80
nc
不通:
1、80服务没开或端口不存在。
2、fw防火墙阻挡了。
3、服务监听的端口不在连接的ip上。
4、ISP运营商默认不开,申请开端口。
抓包工具
tcpdump
tcpdump -n icmp -i eth0
[root@oldboylinux ~]# tcpdump -n icmp -i eth0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
21:42:05.685111 IP 192.168.31.1 > 192.168.31.128: ICMP echo request, id 1, seq 1, length 40
21:42:05.685202 IP 192.168.31.128 > 192.168.31.1: ICMP echo reply, id 1, seq 1, length 40
21:42:06.690060 IP 192.168.31.1 > 192.168.31.128: ICMP echo request, id 1, seq 2, length 40
21:42:06.690097 IP 192.168.31.128 > 192.168.31.1: ICMP echo reply, id 1, seq 2, length 40
21:42:07.704058 IP 192.168.31.1 > 192.168.31.128: ICMP echo request, id 1, seq 3, length 40
21:42:07.704088 IP 192.168.31.128 > 192.168.31.1: ICMP echo reply, id 1, seq 3, length 40
21:42:08.717695 IP 192.168.31.1 > 192.168.31.128: ICMP echo request, id 1, seq 4, length 40
21:42:08.717725 IP 192.168.31.128 > 192.168.31.1: ICMP echo reply, id 1, seq 4, length 40
nmap
windows:wireshark,sniffer,科来网络分析。