• DNS原理


    1、dns命令基础及通过命令理解dns原理

    DNS域名解析查询:

    dig  www.xxx.com

    nslookup

    host

    ping

    链接:https://blog.csdn.net/a583929112/article/details/66499771

    2、网卡知识-dns配置-生效

    网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0

    DEVICE=eth0     第一块网卡逻辑设备名,第二块为eth1,有些系统也会以em等字符标识

    HWADDR            以太网硬件地址即MAC地址,如果是vmware克隆的虚拟机无法启动网卡可以毫不犹豫的删除此项

    TYPE=Ethernet  上网类型,目前基本都是以太网

    UUID                   通用唯一识别码,如果是vmware克隆的虚拟机无法启动网卡可以去除此项

    ONBOOT=no      这个地方要为yes,才能保证下次开机启动激活网卡设备

    NM CONTROLLED=yes  是否通过 NetworkManager 管理网卡设备

    BOOTPROTO=none       启动协议,获取配置方式,有none|bootp|dhcp三个选项

    IPADDR               局域网linux服务器的固定IP

    NETMASK           子网掩码,用来规划网络位和主机位,一般为255.255.255.0

    DNS2=8.8.8.8     第二个DNS,这里默认会覆盖以及优先于 /etc/resolv.conf 的配置生效

    GATEWAY           局域网上网网关地址

    DNS1=202.106.0.20  主DNS,这里默认会覆盖以及优先于 /etc/resolv.conf 的配置生效

    IPV6INIT=no        是否支持IPV6

    setup-network  config  就是网卡配置文件

    网卡生效:

    推荐:ifdown,ifup

    ifdown  eth0  停掉eth0网卡

    ifup  eth0      启动eth0网卡

    针对所有网卡:

    /etc/init.d/network  restart  针对所有网卡的

    注意:

    1.网卡如果配置DNS,会优先于/etc/resolv.conf的配置,并且重启网卡,会把 /etc/resolv.conf里的覆盖

    2.网络如果没有配置DNS,那么在/etc/resolv.conf里配置会生效,如果有多块网卡(DHCP获取方式)时候,可能会覆盖/etc/resolv.conf里已有的配置

    3、主机名更改

    1.hostname

    2.vi  /etc/sysconfig/network

    3.vi  /etc/hosts

    如果用setup->dns设置修改主机名,永久生效(但命令行不生效)

    影响/etc/sysconfig/network和/etc/hosts配置文件

    4、已知端口查进程名的多种方法

    已知一个端口为333,如何查看端口对应的是什么服务名?

    方法1:lsof  -i:52113

    方法2:netstat  -lntup | grep  52113

    5、网络及服务故障排查思路及命令

    1.ping     icmp协议

    2.traceroute  www.baidu.com  -n(-n表示不解析)

    3.telnet  www.qq.com  80  检查服务器WEB有没有开启,服务开没开,以及防火墙有没有挡住

       namp  ip地址  -p  80

       nc

    不通:

    1)80服务没开或端口不存在

    2)fw防火请阻挡了

    3)服务监听的端口不在连接的IP上

    4)运营商默认不开,申请开端口

    4.win:跟踪路由

    tracert  -d  www.baidu.com

    6、抓包工具:

    tcpdump 命令

    tcpdump  -n  icmp  -i  eth0

    namp

    win:wireshark

    例题:作为企业网管,局域网的某个机器无法上网,请给出详细排错思路?

    以 win32 客户端为例:

    (一)单个机器无法上网,别人可以

    1.ping  www.baidu.com

    如果通,但还不能上网:可能是浏览器、中毒等问题

    2.ping 网关,目的是排除物理链路(网线,网卡,驱动,IP设置等)

       如果 ping 网关不通,则查看 ip 设置,然后 ping自身 ip 或 ping 网内其它机器 ip

       如果 ping 自己 ip 不通:检查 ip 设置、网卡驱动、物理链路

       如果 ping 网内其它机器 ip 是通的,网关不让你联网了

    3.ping 网关通的情况下,检查 DNS 的设置情况是否正确

       1)检查方法是,ping 公网 ip,看通畅情况(平时要记几个外部 ip)ping 203.81.19.1

       2)host/dig/nslookup 检查域名解析

    4.上网路由器问题(配置和硬件)以及 ISP 线路问题

       登录路由,检查上级线路,打电话给 ISP 技术

    5.辅助排查:其他人能否上网,ip 地址冲突,ARP病毒,核心交换机坏了,交换机环路(看日志)

    (二)大面积上不了网:

    路由器,ISP,核心交换机,ARP 病毒欺骗网关,网关地址被占用,LDNS 出问题

    核心交换机坏了,交换机环路

    例题:作为 linux 运维,客户反映打开你部署的网站服务器慢,请给出详细排错思路?

    (一)用户个例,还是全部

    自己把自己当做用户去测试,如果没问题,就从客户的角度去思考

    (1)路是否通的问题

    1.ping www.baidu.com  高速路有没有修好

       如果 ping 是通的,不丢包。http服务的问题(服务宕机了,服务过载了)

       如果 ping 是通的,丢包。机房带宽不稳定。各个线路不稳定。

       如果 ping 不通,ping www.baidu.com,机房宕了,或者 http 服务的问题(服务宕机了,服务过载了)

    2.tracert -d  www.baidu.com  高速的各个路段有没有修好。从客户端到服务器之间各个线路。让机房配合查。

    (2)机房业务是否OK

    3.telnet  ip地址  80端口        检查服务器WEB服务有没有开启以及防火请有没有挡住

       nmap  ip地址  -p  80

    4.提供服务的服务器是否资源过载,服务器及服务连接数过多,负载高,CPU高,IO高等

    (3)外部问题

    5.服务器购买的带宽满了,通过流量监控服务查看

    6.内链外链(调用外部网站网址有问题)

    必不可少的重要调试网站前端的工具

    根据网站URL调试网站

    1、google浏览器直接F12

    2、火狐 firebug,yslow

    3、le  httpwatch

    (4)其它问题

    个别客户自身问题,例如:用户的线路和运营商线路不符

    (5)集群架构(数百台服务器服务)

    1、web 服务问题

    2、数据库问题,登录数据库,看是否有慢查询语句 show  proceslist,调整 MySQL 配置,优化SQL语句

    3、存储等的问题,是不是存储服务器,如 NFS,MFS 的负载及磁盘 IO 过高?

    例题选集:

    1、查看当前系统每 IP 连接数

    解答:netstat  -an | grep "ESTABLISHED" | awk ' {print$4} ' | awk -F: ' {print$1} ' | sort -n | uniq -c

    2、请列出以下服务使用的端口

         http,https,ftp,telnet,ssh,rsync,dns,mysql

    解答:grep  -Ew  " ^(http|https|ftp|telnet|ssh|rsync|dns|mysql) "  /etc/services

              awk  --posix  ' $1~ /^ (http|https|ftp|telnet|ssh|rsync|dns|mysql)$ / {print$0} '  /etc/services

    3、请列出 linux 下系统常用的几种文件系统格式,并比较各自特点

    解答:uname  -r  ->查询系统内核版本名

               find  /  -type  d  -name  "内核版本名"  ->查询到内核版本所在路径

               ls  /lib/modules/2.6.32-573.el6.x86_64/kernel/fs/

    4、在 linux 下给 INTEL 82571 网卡的第一个口配置 IP,网关和增加路由,请写出命令行的具体步骤:

         IP 10.10.10.10/255.255.255.0  网关 10.10.10.1  需要增加路由:到网段 192.168.0.0/255.255.255.0 通过 ip 10.10.10.2 出去

    解答:ifconfig  eth0  10.10.10.10/24

              route  add default  gw  10.10.10.1  /  route  -n

              route  add  -net  192.168.0.0/24  gw  10.10.10.2  /  route  -n

    5、请详细描述 DNS 解析过程,以请求 www.baidu.com 为例

    6、请描述 TCP 四次断连过程

    解答:通过命令 "tcpdump  port  22  -Stn  -c  3" 分析

    7、如何对主机做双网卡绑定?如何对交换机做端口绑定?

    8、对于网络丢包问题你会怎么去排查?(物理链路如网线破损;带宽占用等)

    9、如何查看主机的路由规划、开放端口、tcp链接状态?(route -n / netstat -rn / netstat -ntl)

    10、简述 raid0  raid1  raid5 三种模式的

    RAID0:

    工作原理

    磁盘数量->1块到多块

    组合后的容量->组合内所有硬盘容量之和

    读写的性能->读写性能都是组合内所有硬盘的读写性能之和

    是否具有冗余性->没有冗余性

    适用场景->负载均衡集群中的从节点

    RAID1

    磁盘数量->2块

    组合后的数量->单盘容量

    读写性能->读性能几乎是两块硬盘的读性能之和,写性能几乎为单盘写性能

    是否具有冗余性->具有冗余性,同时可以坏一块硬盘

    适用场景->系统盘

    RAID5

    硬盘数量->3块以上

    组合后的容量->组合内所有硬盘之和减去单盘容量

    读写性能->读性能几乎是组合内所有硬盘的读性能之和减去单盘读性能;写入性能为单盘的写性能

    是否具备冗余性->具备,同时最多可以坏一块硬盘

    适用场景->几乎适用于所有非数据库和存储的服务器

    RAID10

    磁盘数量->4块,或者以上的偶数盘

    组合后的容量->组合内所有硬盘容量之和的50%

    读写性能->读性能几乎是组合内所有硬盘的读性能之和,写入性能几乎是组合内所用硬盘写入性能的50%

    适用场景->数据库主节点、存储服务器主节点

    是否具备冗余性->具备;同时可以坏一半的硬盘

    11、写出 172.16.0.10/25 和 10.10.1.2/23 的掩码地址、广播地址和反掩码

    12、你使用过和听说过的几种监控软件吗?说说其特点

    cacti:监控网络流量和绘图功能比较优秀

    nagios:监控服务器的负载和服务状态比较有优势

    zabbix:综合以上两种

    13、如何查看 www.abc.com 的解析 IP 地址及其所使用的权威 DNS

    14、简要叙述下列端口所运行的服务

    21、22、23、25、110、143、873、3306

    21  20:ftp

    22:ssh

    23:telnet

    25:smtp

    110:pop3   995

    143:imap4   993

    873:rsync

    3306:mysql

    15、简述 TCP 三次握手的过程

    1.在最开始,客户端和服务器都处于 CLOSE 状态

    2.服务器会创建 socket 开始监听,服务器状态 LISTEN

    3.客户端向服务器发送 SYN,请求建立连接,发完之后自己的状态变为 SYN_CENT

    4.服务器收到客户端发来的 SYN,然后会回复 ACK 和 SYN,发完之后自己的状态变为 SYN_RECV  RCVD

    5.客户端收到服务器发来的 SYN 和 ACK 之后会马上回复 ACK,回复完之后状态变为 ESTABLISHED

    6.服务器端收到客户端发来的 ACK 之后会直接进入 ESTABLISHED

    至此,三次握手完成,连接建立

    16、tcpdump 怎么抓出 ip 是10.10.0.10  tcp 80 端口的包

    tcpdump  host  10.10.0.10  and  port  80

       

               

              

      

  • 相关阅读:
    linux vsftpd
    java运用FFMPEG视频转码技术
    使用ffmpeg实现转码样例(代码实现)
    最简单的基于FFMPEG的转码程序
    关于Android Studio升级到2.0后和Gradle插件不兼容的问题
    Android设计模式之命令模式、策略模式、模板方法模式
    Android设计模式源码解析之桥接模式
    Android 项目利用 Android Studio 和 Gradle 打包多版本APK
    RTMP协议详解(转)
    Android 如何使用juv-rtmp-client.jar向Red5服务器发布实时视频数据
  • 原文地址:https://www.cnblogs.com/axzq/p/9721505.html
Copyright © 2020-2023  润新知