brd

Linux网络基础

落爺英雄遲暮 提交于 2019-12-04 13:56:13
1、简述osi七层模型和TCP/IP五层模型 osi七层模型分别是:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。   1)物理层:这一层的主要功能是二进制传输数据,界定连接器和网线的规格;为启动、维护以及关闭物理链路定义了电气规范、机械规范、过程规范和功能规范   2)数据链路层:这一层的主要功能是互连设备之间传送和识别数据帧;定义如何格式化数据以便进行传输以及如何控制对网络的访问   3)网络层:这一层的主要功能是地址管理和路由选择;路由数据包,选择传递数据的最佳路径,支持逻辑寻址和路径选择   4)传输层:这一层主要功能是管理两个节点之间的数据传输,负责可靠传输;确保数据传输的可靠性(确保数据被可靠地传送到目标地址);建立、维护和终止虚拟电路;通过错误检查和恢复;信息流控制来保障可靠性。   5)会话层:这一层的主要功能是通信管理;建立、管理和终止在应用程序之间的会话。   6)表示层:这一层的主要功能是设备固有数据格式和网络标准数据格式的转换;确保接受系统可以读出该数据、格式化数据、构建数据;协商用于应用层的数据传输语法;提供加密。   7)应用层:这一层的主要功能是针对特定应用协议为其应用程序进程提供网络服务;提供用户身份验证。 tcp/ip协议栈把网络分为5层结构,分别是物理层、数据链路层、internet层和应用层。   1)物理层:负责数据传输的硬件

Centos7 下编译ramdisk内核模块brd.ko的方法

▼魔方 西西 提交于 2019-12-04 09:46:21
1. 确保centos7上有gcc和make等工具 2. 获取centos7源码。 CentOS-7-x86_64-1503-01版本的内核是3.10.0-229.el7.x86_64,下载该distribution版本的内核源码,拷贝到根目录: http://vault.centos.org/7.1.1503/updates/Source/SPackages/kernel-3.10.0-229.1.2.el7.src.rpm 安装该源码包 [user@host]# rpm -i kernel-3.10.0-229.1.2.el7.src.rpm 现在内核的源代码目录树可以在 ~/rpmbuild/SOURCE/ 这个目录内找得到,源码文件是linux-3.10.0-229.1.2.el7.tar.xz 3. 编译内核源码 (1) 将linux-3.10.0-229.1.2.el7.tar.xz 文件拷贝到目录 /usr/src/kernels/ 下 (2) 解压内核源码 [user@host kernels]# tar -xvf linux-3.10.0-229.1.2.el7.tar.xz (3) 切换到 linux-3.10.0-229.1.2.el7目录 [user@host kernels] # cd linux-3.10.0-229.1.2.el7 (4

7月5日

匿名 (未验证) 提交于 2019-12-03 00:39:02
LVS DR模式搭建 18.11 LVS DR模式搭建 1.准备工作 DR模式同样需要三台虚拟机,三台机器只需要有“公网”IP,但在这种模式下又多了一个VIP。 调度器dir:172.16.111.100 真实服务器rs1:172.16.111.110 真实服务器rs2:172.16.111.120 VIP:172.16.111.200 2.DR模式搭建 在dir机器上写入脚本 [root@garytao-01 ~]# vim /usr/local/sbin/lvs_dr.sh 增加如下脚本内容: #! /bin/bash echo 1 > /proc/sys/net/ipv4/ip_forward ipv=/usr/sbin/ipvsadm vip=172.16.111.200 rs1=172.16.111.110 rs2=172.16.111.120 #注意这里的网卡名字 ifdown ens33 #为了不让网卡设置多次 ifup ens33 ifconfig ens33:2 $vip broadcast $vip netmask 255.255.255.255 up route add -host $vip dev ens33:2 $ipv -C $ipv -A -t $vip:80 -s rr $ipv -a -t $vip:80 -r $rs1:80 -g -w 1

OpenShift 4.2 离线安装记录

走远了吗. 提交于 2019-12-02 22:00:26
OpenShift4.2详细安装参考同事王征的安装手册(非常感谢王征的研究和答疑解惑) https://github.com/wangzheng422/docker_env/blob/master/redhat/ocp4/4.2.disconnect.install.md 因为我这边的环境有些不通,所以这里只是自己的补充记录,详细的需要对照来看. 1.架构 Bootstrap nodes 192.168.7.12 master-0.ocp4.redhat.ren 192.168.7.13 master-1.ocp4.redhat.ren 192.168.7.14 master-2.ocp4.redhat.ren 192.168.7.15 worker-0.ocp4.redhat.ren 192.168.7.16 worker-1.ocp4.redhat.ren 192.168.7.17 worker-2.ocp4.redhat.ren 192.168.7.18 2.网络 我手头的机器是4台NUC,每台4CPU,32G内存,因此OpenShift节点启动以后的网络连接就是一个问题。 经过尝试,采用的是KVM的Bridge模式,具体设置如下。 在每台机器上设置 添加一个br0 [root@base ocp4]# cat /etc/sysconfig/network-scripts

heartbeat的双机互备

末鹿安然 提交于 2019-12-02 17:57:37
heartbeat快速部署: 高可用服务————将资源(IP及程序服务等资源)从一台已经故障的主机上快速转移到另一台正常运转的主机上继续提供服务 配置heartbeat软件的配置文件,指定哪一台heartbeat服务器作为主服务器,另一台作为热备服务器,在热备上配置heartbeat守护程序监听主服务器的心跳信息。(主备模式) 上面是主备模式,另外还可以做主主模式,即两台服务器互为主备,这时他们之间会相互发送报文来告诉对方自己当前的状态 如果在规定的时间内没有收到对方发送过来的心跳报文,就会认为对方挂了,此时就会启动程序接管运行在对方机器上的资源或服务。 heartbeat故障切换时间为5-20s 和keepalived一样。heartbeat也是服务器级别的,不是服务级别。 切换条件: 1、服务器宕机 2、heartbeat服务本身故障 3、心跳线故障 服务故障不会导致切换,但是可以通过服务故障,把heartbeat服务停掉,这样就符合切换条件了 heartbeat心跳连接: 1、串行线缆,即所谓的串口(缺点是两台主机之间不能距离太远) 2、以太网线两台主机上的网卡直连(推荐,但是需要在两台主机上各自做路由) 3、以太网电缆,通过交换机等网络设备连接(次选) 生产环境使用第二种或第一种,或是两种同时使用 脑裂: 两台高可用服务器对在指定的时间内

第六章 命令集结

寵の児 提交于 2019-12-02 06:34:44
命令集结 1.echo 所见即所得,输出内容到屏幕上面。 单引号和双引号及不加引号的区别? 单引号:所见即所得。单引号里面的内容,会被看做一个整体,不会解析变量和特殊字符。 双引号:所见即所得,会解析变量。 不加引号:所见即所得,会解析变量。支持通配符。 反引号:先执行反引号里面的命令,将输出结果交给外面的命令。(反引号执行的是命令) [root@qiudao ~/shell]# mkdir date +%F [root@qiudao ~/shell]# ll total 12 drwxr-xr-x 2 root root 6 Jun 25 19:30 2019-06-25 [root@oldboyedu opt]# echo 123 >file.txt [root@oldboyedu opt]# echo 123 >>file.txt 标准输出重定向 标准输出追加重定向 [root@oldboyedu opt]# echo -e "oldboy\noldgirl" oldboy oldgirl 2.whoami 显示当前用户 [root@oldboyedu opt]# whoami root 3.pwd 显示当前所在的位置,路径 [root@oldboyedu opt]# pwd /opt [root@oldboyedu opt]# cd [root@oldboyedu ~]#

nginx+keepalived实现主从高可用

自闭症网瘾萝莉.ら 提交于 2019-12-01 19:00:31
设备: 主:192.168.200.122 从:192.168.200.124 安装:两台都分别安装nginx以及keepalived 两台机步骤一致一主一从 安装nginx的依赖包 [root@localhost ~]#yum install gcc gcc-c++ make pcre-devel zlib-devel -y [root@localhost ~]#useradd -M -s /sbin/nologin nginx [root@localhost ~]#tail -l /etc/passwd;tail -l /etc/group [root@localhost ~]#rz #导入nginx源码包 [root@localhost ~]# ls anaconda-ks.cfg nginx-1.15.9.tar.gz original-ks.cfg 模板 图片 下载 桌面 initial-setup-ks.cfg 公共 视频 文档 音乐 [root@localhost ~]# tar xf nginx-1.15.9.tar.gz -C /usr/src [root@localhost ~]# cd /usr/src/nginx-1.15.9 [root@localhost ~]# ./configure --prefix=/usr/local/nginx --user

Centos7网卡绑定的两种方法

狂风中的少年 提交于 2019-12-01 18:30:23
https://blog.51cto.com/youdong/1963416 选择模式4,并且layer选择3+4,交换机要配置LAG 一. 传统的bond方式 (1)bond几种主要模式介绍 ü mode 0 load balancing (round-robin)模式 ,需要交换机端支持,支持多端口负载均衡,支持端口冗余,slave接口的mac相同 ü mode 1 active-backup模式,最大支持两个端口,一主一备,同一时间只有一块网卡工作,不支持抢占 ü mode 4 采用IEEE802.3ad方式的动态协商机制聚合端口,需要交换机开启lacp,并且配置为主动(active)模式 ü mode5和mode6 类似mode1的主备模式,不常用 (2) bond配置 ü 需要关闭NetworkManager服务 [root@docker ~]# systemctl stop NetworkManager [root@docker ~]# systemctl disable NetworkManager ü 查看内核是否加载bounding [root@docker ~]# lsmod|grep bonding bonding 141566 0 如果没有加载bonding可以通过以下命令加载 modprobe --first-time bonding ü

网路基础管理

廉价感情. 提交于 2019-12-01 01:14:18
网络基础管理 文章目录 网络基础管理 1. 网卡命名 1.1 传统网卡命名机制 1.2 redhat7网卡命名机制 1.3 网络接口名称组成格式 1.4 网卡设备的命名过程 1.5 回归传统命名 2. 网络管理常用命令 2.1 ifconfig 2.2 ip 2.3 route 2.4 hostname与hostnamectl 3. 网络相关配置文件 3.1 网络配置文件 3.2 网络接口配置文件 3.3 路由配置文件 3.4 DNS配置文件 4. NetworkManager管理网络 5. 使用原生network管理网络 6. 网络检测工具与故障排查 6.1 ping 6.2 host与nslookup 6.3 traceroute 6.4 netstat 6.5 ss 6.6 网络故障排查 作业 1. 网卡命名 1.1 传统网卡命名机制 传统命名: 以太网eth[0,1,2,…] wlan[0,1,2,…] 1.2 redhat7网卡命名机制 systemd对网络设备的命名方式: 如果Firmware或BIOS为主板上集成的设备提供的索引信息可用,且可预测,则根据此索引进行命名,例如eno1 如果Firmware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,例如ens1 如果硬件接口的物理位置信息可用,则根据此信息进行命名,例如enp2s0

使用nmcli设置网络

假装没事ソ 提交于 2019-12-01 00:31:57
给新添加的网卡配置IP地址 现有新添加的两张网卡eno33554992和eno50332216 在server1上使用nmcli [root@server_1 network-scripts]# nmcli connection add con-name eth1 type ethernet ifname eno33554992 ip4 192.168.19.102/24 gw4 192.168.19.1 Connection ‘eth1’ (8099abb8-2a30-4d11-a3ae-ce4c5c534d8b) successfully added. [root@server_1 network-scripts]# nmcli connection add con-name eth2 type ethernet ifname eno50332216 ip4 192.168.19.103/24 gw4 192.168.19.1 Connection ‘eth2’ (f127ca55-37d3-4913-8b62-1969ceabaacd) successfully added. [root@server_1 network-scripts]# ip addr 2 : eno16777736 : < BROADCAST , MULTICAST , UP , LOWER_UP >