学习笔记(15)

Posted

tags:

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

1.A ping B 中间路由可以不加的


A--net1--1 R1 2--net2C--3 R2 4--net3D--5 R3 6--net4--B


R1

route add -net net4/N4  gw ip3  只加此条

route add -net net3/N3  gw ip3  不加

或者

route add default   gw ip3



R2

route add -net net1/N1  gw ip2

route add -net net4/N4  gw ip5


R3

route add -net net1/N1  gw ip4

route add -net net2/N2  gw ip4

或者

route add default   gw ip4

2.本网络外部网络都是通过路由来转发数据包的,删除本地路由网络也会不通,所以在创建网卡的时候默认生成一条网卡的网关

3.DEVICE 和HW 找到针对那个网卡来设置 ,与ifcfg-eth0  对应,DEVICE=eth0,或者指定网卡的MAC地址(ifconfig 中查看到的) HWADDR=...

4.多个DNS设置 可以作为高可用来设置 如1.1.1.1(澳大利亚的DNS服务器) 114.114.114.114(阿里的DNS服务器) 

5.HWADDR 必须是真实的MAC地址(ifconfig中查看到的MAC地址),MACADDR可以是VMware生成的假的MAC地址如果名字为HWADDR指定假的MAC地址会报错,指定网卡可以通过指定DEVICE名或HWADDR一项即可定位网卡

6.DNS是否生效 查看cat /etc/resolve.conf 是否有DNS主机IP

7.修改主机名 vi /etc/sysconfig/network (centos6)  hostname 主机名

  提示符需要重新登录才会变化

  vi /etc/sysconfig/network 也可以存放网关的配置

  如: GATEWAY=192.168.30.254 

  修改后不会立即生效,reboot后才可生效,可以使用route add 来即时生效

  ifcfg-ens33中的修改网关也必须通过reboot后才生效,重启网络服务不生效

  冲突的话以网卡中配置的网关优先生效

8.ifconfig ens33:0 192.168.1.1/24 临时设置

9.永久保存多IP,需要编辑配置文件ifcfg-eth0:1,需要主机的地方是一定要让配置文件中的DEVICE名字为ifcfg-后面的eth0:1

  cat > ifcfg-eth0:1

  DEVICE=eth0:1  名字与文件名的后缀相同来定位网卡(也可以通过MAC地址来定位网卡)

  ...

  重启网络服务后永久生效

10.当路由器的服务器一定要注意开启端口转发功能/proc/sys/net/ipv4/ip_forward 为1 ,单臂路由不穿过路由器所以ttl值不减1

   伪文件系统的文件不能使用编辑器打开编辑可以使用echo "value" > /pro/sys/net/ipv4/ip_forward 来更改,文件名也可以是参数名,如sysctl -w net.ipv4.ip_forward=1

   让配置永久生效 需要修改配置文件 vi /etc/sysctl.conf ,修改完配置文件后使用 sysctl -p 来生效,sysctl -a 来显示当前的配置

11.ping -I 1.1.1.254 3.3.3.3 可以指定用哪个网卡去ping

12.tcpdump icmp -nn 查看当前网络的出包,指定-nn选项,不将服务端口号解析成service名字

13.netstat -nr (route -n) 查看路由表

14.socket套接字文件用于本地通信的,走tcp/ip协议栈需要封装解封装来通信

15.netstat -p 查看是哪个进程打开的端口 -e会显示扩展信息 -l listen 监听状态

   netstat -i 统计发送包收包的个数,增长过大有可能收到攻击

   tcpdump -i eth0 -nn 来抓包查看详细   -nn选项不让其解析成服务名字以免影响效率

   netstat -Ieth0  netstat -I=eth0 指定端口来查看收发包个数

16.MTU 以太网帧的数据部分

17.netstat 可以使用ss 代替,ss效率比netstat 高

18.ip link 查看链路层的信息

   ip address  查看三层信息包括二层信息

   ip a (ip address), ip r (ip route) 简写

   ip route 使用其显示格式复制粘贴可以添加路由(删除也可以使用ip route格式)

   ip route add 4.4.4.0/24 via 192.168.1.100 即可

   ip命令有补全功能,centos6 中要使用yum install bash-completion -y  (EPEL源中)

19.使用 桥接也可以上网,如果局域网是通过NAT来上网的

20.yum源的原理说明补充

21.ip address add 2.2.2.2/24 dev eth0 label eth0:2  lable别名

22.ip link set eth0 down  相当于拔除网线

   ip link set eht0 up    插上网线

23.ip 作用域:

   global: 不同网卡的的IP也会响应

   link: 只有相连的IP地址才会响应

   host: 只在本机有效

24.保存路由的配置文件

   /etc/sysconfig/network-scripts/route-IFACE

   需要service network restart 生效

   两种风格:

   1.target via gw

   如: 10.0.0.0/8 via 172.16.0.1

   2.每三行定义一条路由

   如:ADDRESS=target

      NETMASK=mask

      GATEWAY=GW

25.网卡别名必须手动指定IP,标准的网卡配置文件可以手动指定IP也可动态获取IP,可以一个自动获取一个手工指定

26.TYPE 和UUID 配置文件中可以不指定

27./etc/hosts文件 将名字解析成地址 (共同的域名解析优先级高于DNS)

   6.6.6.6 www.magedu.com

   主机名和IP的对应关系要在主机名修改之后添加,有些服务是通过主机名来访问的,所以建议两处配置文件都修改

   修改优先级 /etc/nsswitch.conf, files 在前


cat /etc/nsswitch.conf   

#hosts:     db files nisplus nis dns

hosts:      files dns  修改files 和dns的顺序就可以重新定义dns解析的优先级


   dns的修改顺序

   可以修改/etc/hosts 来将google地址的ip对应关系写入即可×××

28.单个网卡可以配置不同网段的ip来模拟不同的网卡

29.USERCTL 是否允许普通用户启动和关闭网卡

30.cat /proc/net/bonding/bond0 查看状态

31.bond3广播模式 所有网卡都走相同数据包 (DUP!) 回包重复

32.出现virbr0,卸载软件包 yum remove libvirt-daemon -y,reboot后就可以消失

33.bond实验补充、网卡名修改实验补充

34.安装kernel-doc包查看bond0的帮助文档

35.modporobe -r bonding 卸载bongding 模块(lsmod显示装载的模块)

36.修改网卡名(centos7) 

   方法1:vim /etc/grub2.cfg(/etc/default/grub文件的链接) 修改文件,然后重启reboot即可生效

   方法2:vim /etc/default/grub 增加内容 修改重新生成文件grub.cfg

         grub2-mkconfig 回车输出内容需要重定向 -o 输出至文件  reboot后重命名生效

   都是最终修改/boot/grub2/grub.cfg

37.nmcli (network manager client)

   centos7 管理网络

38.nmcli视频补充

39.centos 7 /etc/hostname  hostname 修改主机名

   hostnamectl 修改配置文件后直接生效

   hostnamectl set-hostname  主机名

   exec bash  相当与退出后登录 提示符的主机名修改

40.127.0.0.1 行的后面的也要加本机的主机名和简名

41.temdctl team0 state  查看状态

42.nmcli 加team rhce要很熟练 

43.ethtool ens33 可以查看网卡的硬件配置信息

   mii-tool ens33 查看网卡的硬件配置信息

44.nslookup www.baidu.com 是否能够解析域名

   dig www.magedu.com  查看是否能够解析域名

   host www.baidu.com 查看是否能够解析域名

45.ip address 可以查看网线是否断开(down)

46.yum install ftp lftp 安装客户端 使用ftp,lftp更方便,可补全 能显示颜色区分文件夹文件

47.lftpget ftp://172.20.0.1/pub/Tools/file  非交互下载 脚本中可用

   wget 既可以下载ftp文件也可以下载http文件

48.grep -q yum -q 静默安装 wget -q

49.yum install links -y 

   links 172.20.0.1 --source 可以查看源码

   links  172.20.0.1 --dump > a.txt 不然复制的文件可以直接dump --dump 只显示文件

50.Cow copy on write 写时复制(类似快照的效果)  创建子进程时,子进程在修改内存的时候会复制一份内存空间

51.ps aux VSZ 程序所需的全部内存,RSS 实际分配的内存(程序在运行期间不需要给出所有内存,只需分配部分内存供程序运行使用,而后需要的时候系统再去分配内存)

52.free shared 共享的内存空间,可以用于主机内的进程之间的通信

53.消息队列多条消息发送到消息队列来通信。

54.不可中断,不可以被唤醒,只有满足某种条件才可以唤醒

   僵死态,进程结束后内存空间未释放

55.pstree -p     显示的信息中{} 括起来的就是线程

56.exec bash 类似于登出再登录,(需要登出再登录时才可生效的时候可以执行exec bash命令来解决)

57.想要网卡的别名(注意是别名,而不是独立的网卡,独立的网卡不仅需要配置文件还需要虚拟机添加网卡才可以)永久生效需要有配置文件才可以,

58.模拟拔网线可以使用

   # ip link set ens33 down(ifconfig ens33 down)

   # ip link [show] (ip address) 都可以查看网络的状态(UP/DOWN)  

59.nmcli 可支持补全功能,可以通过nmcli connection 来生成网卡的配置文件后通过nmcli connection up name 来生效网卡配置

   nmcli device status

   nmcli connection show

   nmcli connection delete ens33

   nmcli connection add con-name office-eth1 ifname eth1 type ethernet ipv4.method auto connection.autoconnect yes

   nmcli connection show

   nmcli connection up office-eth1  配置文件关联网卡设备

   nmcli connection

   nmcli connection modify Wired\ connection \2 con-name home-eth1

   nmcli connection

   nmcli connection  就是编辑配置文件

   cat ifcfg-home-eth1  ,可以直接修改文件也可以使用nmcli

   nmcli connection modify home-eth1 ipv4.address 172.20.0.7/16 ipv4.gatewat 172.20.0.1 ipv4.dns 114.114.114.114 ipv4.method manual  (默认是自动获取)不设置的方法为manal,ip设置将无效

   nmcli connection up home-eth1 生效

   单块网卡地址的IP切换

   cp 拷贝nmcli生成的网卡设备文件后修改后需要nmcli connection reload 加载至内存生效

   nmcli生成的配置文件手动修改后只能使用nmcli connection reload 来使其生效,使用nmcli connection up static-eth1 类似的命令不能使其生效,使用nmcli connection modify来修改的可以使用nmcli connection up static-eth1才可以使其生效


补充,UUID唯一标识一个网卡设备,如果在复制网卡文件或是克隆时可以删除其UUID让系统重新生成以免冲突


nmcli connection modify \Wired\ connection\1 con-name eth0 ipv4.method manual ipv4.address 192.168.30.7/24

nmcli connection up eth0 关联配置文件至网卡并使其生效

nmcli device disconnect eth1  只是删除网卡的ip地址,网络状态依旧是UP状态

nmcli device connect eth1  恢复网卡的ip地址

    nmcli connection show ens33 查看nmcli的详细配置信息(ipv4.method 默认是auto)


60.修改完主机名在127.0.0.1的最后面填上主机名和简名

61.centos7 代替bonding的是Teaming ,性能据说优于bonding

62.teamdctl team0 state

63.nmcli connection delete ... (Teaming的3个配置文件)


nmcli的team实验博客

ip分类的课堂笔记博客

wireshark的安装,使用

创建镜像安装包合集(Centos6)



64.nmcli创建Teaming步骤:(Centos7)

  1.首先需要两块或以上的网卡设备,#nmcli device status 可以查看系统网卡的状态

  2.nmcli connection delete ens33 (nmcli connection show 第一列的名字) 删除ifcfg-ens33的网络配置文件

  3.nmcli connection delete ens37 删除ifcfg-ens37的网络配置文件

  4.nmcli connection add type team con-name team0 ifname team0 config '{"runner":{"name":"activebackup"}}'  

  5.nmcli connection modify team0 ipv4.address 192.168.1.2/24 ipv4.method manual

  6.nmcli connection add type team-slave con-name team0-ens33 ifname ens33 master team0

  7.nmcli connection add type team-slave con-name team0-ens37 ifname ens37 master team0 

  8.nmcli connection up team0

  9.nmcli connection up team0-ens33

  10.nmcli connection up team0-ens37

  11.teamdctl team0 state 查看team的状态

  12.nmcli dev dis ens33


nmcli中的con-name(对应于nmcli connection show 的第一列的名字) ,ifname(对应于device name)

nmcli命令本质是创建网卡的配置文件,如ifcfg-team0-slave

nmcli connection up name(nmcli connection show 的第一列的名字) 生效配置文件

如果使用编辑器修改nmcli生成的配置文件需要重载,nmcli connection reload 来生效


nmcli创建bond的步骤:

   1.nmcli connection add type bond con-name my-bond0 ifname bond0 mode active-backup

   2.nmcli connection modify my-bond0 ipv4.method manual ipv4.address 192.168.1.100/24

   3.nmcli connection add type bond-slave con-name bond0-ens33 ifname ens33 master bond0 (bond0为nmcli connection show 命令的device的名字)

   4.nmcli connection add type bond-slave con-name bond0-ens37 ifname ens37 master bond0

   5.nmcli connection up bond0-ens37   生效配置(要先从从接口开始启动,然后再启动bond接口)

   6.nmcli connection up bond0-ens33 

   7.nmcli connection up my-bond0         最后生效bond0接口


手动配置bonding

   vi ifcfg-bond1:

   DEVICE=bond1

   IPADDR=192.168.30.6

   PREFIX=24

   BONDING_OPTS="mode=1 miimon=100"


   vi ifcfg-ens33:

   DEVICE=ens33

   MASTER=bond1

   SLAVE=yes



   vi ifcfg-ens37:

   DEVICE=ens37

   MASTER=bond1

   SLAVE=yes


   重启服务即可生效


   卸载bond

   1.ifconfig bond1 down 

   2.rmmod bonding(mobprobe -r bonding) 卸载bonding模块(lsmod |grep bonding)

   查看bonding的具体状态信息

   cat /proc/net/bonding/bond0

以上是关于学习笔记(15)的主要内容,如果未能解决你的问题,请参考以下文章

python学习笔记(15)循环设计

Oracle曾经的Oracle学习笔记(8-15)

CUBRID学习笔记 15 Lobs类型数据

docker学习笔记15:Dockerfile 指令 USER介绍

Python学习笔记15(socketservre)

Ext.Net学习笔记15:Ext.Net GridPanel 汇总(Summary)用法