学习笔记之Linux网络及其配置

概述

网络是可以实现信息传输、接收、共享的虚拟平台,通过它可以把各个点、面、体的信息联系到一起,从而实现这些资源的共享。信息的传输需要通过TCP/IP协议来完成,IP地址是由网络号+主机号来标识的,主要分为五个类别:

A类:第一段为网络号:后三段为主机号;

网络号:   0 000 0000-0 111 1111 :1-127

每个网络中的主机数量:2^24-2(全0与全1)0网络地址1广播地址

默认子网掩码:255.0.0.0

用于与IP地址按位进行“与”运算,从而取出其网络地址

私网地址:10.0.0.0/255.0.0.0

B类:前两段为网络号,后两段为主机号

网络号:  10 00 0000 - 10 11 1111:128-191

每个网络中的主机数量:2^16-2

默认子网掩码:255.255.0.0

私网地址:172.16.0.0-172.31.0.0

C类:前三段为网络号,最后一段为主机号

网络号: 110 0 0000-110 1 1111 :192-223

网络数:2^21

每个网络中的主机数量:2^8-2

默认网掩码255.255.255.0

私网地址:192.168.0.0-192.168.255.255

D:组播   11100000-1110 1111:224-239

E:保留   11110000-1111 1111:240-255

Linux系统是一个多用户,多任务的系统,每个任务对应一个进程,系统执行多任务时就会启动多进程;所以计算机间的通信主要是进程之间的通信,进程是由数字来进行标识(1-65535),进程分为以下三类:

1-1023:固定分配,而且只有管理员有权限启动;

1024-4W: 半固定,

4W+: 临时;

网络的工作范围:

MAC: 本地通信;范围:本地局域网;

IP:界定通信主机,源和目标;范围:互联网;

Port: 界定进程,范围:单台主机;

Linux主机接入网络中需要配置:IP、NETMASK、GATEWAY、DNS等接口的地址;

配置方式主要分为静态分配、动态分配;


静态分配

命令包括

1、Ifcfg

Ifconfig:配置IP,NETMASK

Route: 路由

Netstat: 状态及统计数据查看工具;

2、iproute3

addr: 地址和掩码配置;

link: 网络接口本身;

route: 路由;

ss: 状态及统计数据查看工具;

3、CentOS 7:nm(Network Manager)家族:

nmcli: 命令行工具

nmtui: 文本窗口工具;text window工具;

4、配置文件:适用于 RedHat及相关发行版

/etc/sysconfig/network-scripts/ifcfg-NETCARD_NAME

动态分配:依赖于本地网络中有DHCP服务器,DHCP通过广播的方式为加入的主机按租期进行动态分发地址;

网络接口命名方式:

传统命名:

以太网:exhX,[0-oo],例如ech0,eth1...

ppp网络:pppX,[0,...],例如,ppp0,ppp1...

可预测命名方案(CentOS 7):

支持多种不同的命名机制:

Fireware,拓扑结构

注:(1) 如果Firmware或BIOS为主板上集成的设备提供的索引信息可用,则根据此索引进行命名,如eno1,eno2,...

(2) 如果Fireware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,如ens1,ens2,...

(3) 如果硬件接口的物理位置信息可用,则根据此信息命名,如enp2so,...

(4) 如果用户显式定义,也可根据MAC地址命名,例如enx122161ab2w10,...

上述均不可用,则仍使用传统方式命名;

 命名格式的组成:

en: ethernet

wl: wlan

ww: wwan

名称的类型:

o<index>: 集成设备的设备索引号;

s<slot>: 扩展槽的索引号;

x<MAC>: 基于MAC地址的命名;

p<bus>s<slot>: 基于总线及槽的拓扑结构进行命名;

Linux网络命令的使用:

1、ifcfg

ifconfig [INTERFACE]

# ifconfig -a:显示所有接口,包括inactive状态的接口;

ifconfig interface [aftype] options |address...

# ifconfigIFACE IP/MASK [up|down]

# ifconfigIFACE IP netmask NETMASK

例:ifconfig eth0192.168.10.100/24 up

ifconfig eth0 192.168.10.101 netmask255.255.255.0

options:

[-]promisc: 启用或禁用混杂模式

例:ifconfig eth0 promisc 表示启用混杂模式

ifconfig eth0 –promisc 表示禁用混杂模式

 route命令:

路由条目类型:

主机路由:目标地址为单个IP;

网络路由:目标地址为IP网络;

默认路由:目标为任意主机,0.0.0.0/0.0.0.0

查看:

# route -n

添加:

route add [-net|-host] target [netmask Nm][gwGW][[dev]if]

例:route add -net10.0.0.0/8 gw 192.168.10.1 dev eth0

或 route add -net0.0.0.0/0.0.0.0 gw 192.168.10.1

删除:

route del [-net|-host] target [netmask Nm][gwGW][[deev]if]

例:route del -net10.0.0.0/8

或route del -net 10.0.0.0/8 gw 192.168.10.1

netstat命令:

显示路由表:

-r: 显示内核路由表;

-n: 显示数字格式;

显示网络连接:

netstat[--tcp|-t][--udp|-u][--sctp|-S][--raw|-w][--listening|-l][--all|-a][--numeric|-n][--extend|-e[--extend|-e]][--program|-p]

-t: TCP协议的相关连接,连接均有其状态;FSM(Finate State Machine);

-u: UDP相关的连接

-w: raw socket相关的连接

-l: 牌监听状态的连接

-a: 所有状态

-n:以数字格式显示IP和port

-e: 扩展格式

-p:显示相关的进程及PID

注:传输层协议:

tcp: 面向连接的协议:通信开始之前,要建立一个虚链路;通信完成后还要拆除连接;

udp: 无连接的协议:直接发送数据报文,无需建立虚链路;

显示接口的统计数据:

netstat  {--interfaces|-I|-i} [--all|-a] [--extend|-e][--verbose|-v] [--program|-p][--numeric|-n]

显示所有接口:

netstat -i

指定接口:

netstat-I<IFace>

例:netstat -Ieth0

ifup/ifdown命令:

注意:通过配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE来识别接口并完成配置;

例:ifup eth0

配置主机名:

hostname命令:

查看:hostname

配置:hostname HOSTNAME

当前系统有效,重启后无效;

CentOS 7:

hostnamectl命令

hostnamectl status显示当前主机名信息;

hostnamectl set-hostname: 设定主机名,永久有效;

配置文件:/etc/sysconfig/network

HOSTNAME=<HOSTNAME>

注意:此方法的设置不会立即生效;但以后会一直有效;

配置DNS服务器指向:

配置文件:/etc/resolv.conf

nameserver DNS_SERVER_IP(最多可以有三个)

2、iproute

ip [ OPTIONS ] OBJECT { COMMAND | help }

ip link: 网络设备配置

ip link set:改变网络设备属性;

dev NAME (default): 指明要管理的设备,dev关键字可省略;

up and down;

例:ip link set eth0 down

multicast on or multicast off:启用或禁用多播功能;

例:ip link set multicast on

name NAME: 重命名;

例:ip link set eth0 down

ip link set eth0 name eno666

mtu NUMBER: 设置MTU的大小,默认为1500;

netns PID: ns为namespace,用于将接口移动到指定的网络名称空间;

例:ip netns help   只支持CentOS 7

删除:

ip netns del mynet

ip link show:显示网络设备属性;

例:ip link show/ ip link list

ip netns:

ip netns list: 列出所有netns

ip netns add NAME: 创建指定的netns

ip netns del NAME: 删除指定的netns

ip netns exec NAME COMMAND: 在指定的netns中运行命令

ip address:

ip address add:

ip addr add IFADDR dev IFACE

例:ip addr add 192.168.10.100/24 dev eth0

[label NAME]: 为额外添加的地址指明接口别名;

例:ip addr add 10.1.1.10/8 dev eth0 label eth0:0

[broadcast ADDRESS]:广播地址;会根据IP和NETMASK自动计算得到;

[scope SCOPE_VALUE]:

global: 全局可用;

link: 接口可用;

host: 仅本机可用;

ip address del:

ip addr delete IFADDR dev IFACE

例:ip addr del 10.0.10.100/8 dev eth0

ip address show:

ip addr list[IFACE]: 仅显示指定接口的地址;

ip address flush:

ip addr flush dev IFACE

例:ip addr flush dev eth0

ip route

ip route add

ip route change

ip route replace

ip route add TYPE FREFIX via GW [dev IFACE] [src SOURCE_IP]

例:ip route list

ip route add 19.168.0.0/24 via 10.0.0.1 dev eth0 src 10.0.20.100

ip route add default via 172.16.0.1 dev eth0

ip route add default via GW

ip route delete

ip route del TYPE PREFIX

例:ip route delete 192.168.1.0/24

ip route show

例:ip route show src 172.16.100.6

ip route flush

例:ip route flush 10/8

ip route get

ip route get TYPE PREFIX

例:ip route get 192.168.0.0/24

ss命令:

ss [options] [ FILTER ]

选项

-t: TCP协议的相关连接

-u: UDP相关的连接

-w: raw socket相关的连接

-l: 监听状态的连接

-a:所有状态的连接

-n: 数字格式

-p: 相关的程序及其PID

-e: 扩展格式信息

-m: 内存用量

-o: 计时器信息

FILTER := [ state TCP-STATE ] [ EXPRESSION ]

  TCP的常见状态

TCP FSM:

LISTEN:

ESTABLISEHD:

FIN_WAIT_1:

FIN_WAIT_2:

SYN_SENT:

SYN_RECV:

CLOSED:

EXPRESSION:

dport=

sport=

例:‘(dport = :22 or sport = :22)‘

ss -tan ‘( dport = :22 or sport = :22 )‘

ss -tan state ESTABLISHED

配置文件:

IP/NETMASK/GW/DNS等属性的配置文件:/etc/sysconfig/network-scripts/ifcfg-IFACE

IFACE: 接口名称;

路由的相关配置文件:/etc/sysconfig/network-scripts/route-IFACE

注:配置文件修改之后,如果要生效,需要重启网络服务;

给接口配置多个地址:

ip addr之外,ifconfig或配置文件都可以;

(1) ifconfig IFACE_LABEL IPADDR/NETMASK

IFACE_LABEL: eth0:0,eth0:1,...

例:ifconfig eno33554984:0 192.168.20.100/24

(2) 为别名添加配置文件;

DEVICE=IFACE_LABEL

BOOTPROTO: 网卡别名不支持动态获取地址;可使用:static, none标识;

时间: 2024-11-05 09:55:36

学习笔记之Linux网络及其配置的相关文章

学习笔记之linux网络属性配置及其命令用法

Linux网络属性配置 先来了解一点网络的基础知识:(这些只需记住) TCP/IP:协议栈(使用中的模型) ISO,OSI:协议栈(学习中的模型) MAC:Media Access Control(介质访问控制) 48bits:(48位二进制) ICANN:24bits, 2^24(组织将这个地址做了定义) 地址块:2^24 网桥(bridge):MAC地址表 网桥自身特性: 静态指定: 动态学习:根据原地址学习: 交换机(switch):多端口网桥: IP(Internet protocol互

马哥Linux学习笔记之二——网络

1.MAC(Media Access Control,介质访问控制) 是解决底层数据通信冲突的解决方案.因此,给每一个接入这样网络的主机一个id标示符,这个id标示符就叫做MAC地址. 2.CSMA/CD(Carrier Sense Multipath Access Collision Detection,载波侦听多路访问冲突检测),线型网络 以太网Ethernet最核心的标志. 3.Token-Ring(IBM)技术 环形网络解决冲突的方案.但是由于IBM的专利限制没能推广开来. 4.星形网络

Linux网络属性配置

Linux网络属性配置 IP(Internet protocol)地址: 网络号+主机号 IPv4:32bits 8bits 8bits 8bits 8bits 0-255 0.0.0.0-255.255.255 IP地址分类: A类: 第一段为网络号,后三段为主机号 网络号 0固定 000 0000-0 111 1111 : 网络数量: 1-127 每个网络中的主机数量:2^24 -2 (全0,全1) 主机全0表示网络本身地址, 全1表示所有主机广播地址地址 默认子网掩码:255.0.0.0

Git学习笔记(9)——自定义配置

本文主要记录了Git的一些易用化的配置和别名的使用 配置Git的命令输出带有颜色,更加醒目 //配置输出颜色 $ git config --global color.ui true //取消输出颜色 $ git config --global color.ui false 忽略特殊文件配置 有些时候,必须把某些文件放到Git工作目录中,但又不能提交它们,比如保存了数据库密码的配置文件等等,每次git status都会显示Untracked files ...,这让有强迫症的我们好难受啊. Git

Linux网络属性配置命令和管理详解

一.Linux网络属性配置 1.Linux主机接入到网络方式 IP/NETMASK:实现本地网络通信 路由(网关):可以进行跨网络通信 DNS服务器地址:基于主机名的通信,Linux可以有三个DNS地址 当第一个地址本身挂了,才会查找其备用地址:若第一个地址无法解析则停止 2.网络属性配置方式 (1)静态指定 1)命令方式 ifcfg系列命令: ifconfig:配置IP,NETMASK route:配置路由相关信息 netstat:状态及统计数据查看 iiproute2系列命令: ip OBJ

Linux网络属性配置相关命令

Linux网络属性配置相关命令: 前言: Linux属性配置可以分为两类.一类通过命令配置,另一类通过修改配置文件配置. Linux属性配置的相关命令可以分为三大类: 一.ifcfg命令家族:①ifconfig,②route,③netstat,④hostname ①ifconfig命令:主要负责接口及地址查看和管理 ifconfig [INTERFACE] #ifconfig -a:显示所有接口,包括inactive状态的接口.(包括激活和未激活的接口): 如图所示,-a选项将会显示所有接口,包

8.Linux网络基础配置

8.Linux网络基础配置 ·在Linux中,以太网接口被命名为eth0,eth1等,0,1代表网卡编号, ·查看: ·通过lspci查看网卡硬件信息,如果是usb网卡,可以运行lsusb, ·ifconfig -a查看所有接口,ifconfig eth0查看特定接口, ·ifup eth0启动接口,ifdown eth0禁用接口, ·配置:运行setup配置网卡, ·网卡配置文件/etc/sysconfig/network-scripts/ifcfg-eth0, ·DNS配置文件/etc/re

Linux网络属性配置命令

一.Linux网络属性配置 1.Linux主机接入到网络方式 IP/NETMASK:实现本地网络通信 路由(网关):可以进行跨网络通信 DNS服务器地址:基于主机名的通信,Linux可以有三个DNS地址 当第一个地址本身挂了,才会查找其备用地址:若第一个地址无法解析则停止 2.网络属性配置方式 (1)静态指定 ①命令方式 ifcfg系列命令: ifconfig:配置IP,NETMASK route:配置路由相关信息 netstat:状态及统计数据查看 iiproute2系列命令: ip OBJE

CKEditor学习笔记2(CKEditor基本配置修改)

第二篇,围绕这5个问题进行基本配置: 1.自定义ToolbarSet,去掉一些功能 2.加上几种常用的字体 3.修改"回车"和"Shift+回车"的换行行为 4.修改编辑区样式文件 5.更换表情图片 这些信息的配置,可以通过config.js文件进行,当然也可以创建自己的配置文件. 可以参考我的步骤: 1.首先创建一个目录custom,接着在该目录内新建一个myConfig.js配置文件. 2.JavaScript调用方式二(上一篇内容),修改为: CKEDITOR