Linux网络配置基础篇

Linux网络配置基础篇

一、如何实现linux网络通信?

1)指定IP/NETMASK可实现本地通信;

2)指定路由(网关)可实现跨网络通信;

3)指定DNS服务器地址可实现基于主机名的通信,

主DNS服务器地址(当前服务器不在线时,启用备用DNS服务器地址)

备用DNS服务器地址

第三备份DNS服务器地址

二、配置网络方式及网络接口命名

linux 网络属于内核的功能,

配置方式:

静态指定:使用命令直接指定或修改配置文件

动态分配:依赖于本地网络中有DHCP服务

网络接口命名方式:

传统命名:

以太网:ethX, [0,oo),例如eth0, eth1, ...

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

本地回环:lo

可预测命名方案(CentOS):

支持多种不同的命名机制:Fireware, 拓扑结构

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

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

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

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

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

命名格式的组成:

en:ethernet

wl:wlan

ww:wwan

名称类型:

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

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

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

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

传输层协议:

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

udp:无连接的协议;直接发送数据报文;

三、常用网络配置命令

1.ifcfg命令家族: ifconfig, route, netstat

1)ifconfig命令:接口及地址查看和管理

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

ifconfig  IFACE  IP/MASK  [up|down]:为指定接口配置ip,开启或关闭接口;

fconfig  IFACE  IP  netmask  NETMASK :为指定的接口配置ip,子网掩码。

options:开启或关闭混杂模式[-]promisc;

注意:立即送往内核中的TCP/IP协议栈,并生效,只对当前内核有效;

管理IPv6地址:

add addr/prefixlen

del  addr/prefixlen

2)route命令:路由查看及管理

路由条目类型:

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

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

默认路由:目标为任意网络,0.0.0.0/0.0.0.0

查看:# route  -n

加:

route add [-net|-host]  target  [netmask  Nm]  [gw GW]  [[dev] If]

示例:route add -net  10.0.0.0/8  gw  172.18.0.1 dev  eth1

到达10.0.0.0网络经由172.18.0.1(下一跳)

route add  default  gw 192.168.0.1 到达任意网络需经由192.168.0.1

删除:

route  del  [-net|-host] target  [gw Gw]  [netmask Nm]  [[dev] If]

示例: route  del  -net  10.0.0.0/8  gw 192.168.0.1

3)netstat命令:

显示路由表:netstat  -rn

-r:显示内核路由表

-n:数字格式

显示网络连接:

netstat  [--tcp|-t]  [--udp|-u]  [--udplite|-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;

常用组合:

netstat-tan:查看tcp协议相关链接

netstat-uan:查看udp协议相关连接

netstat -tnl:查看处于监听状态的tcp协议相关连接

netstat-unl:查看处于监听状态的udp协议相关连接

netstat-tunlp:显示处于监听状态的tcp及udp协议相关连接的进程及PID

显示接口的统计数据:

所有接口:netstat  -i

指定接口:netstat  -I<IFace>

ifup/ifdown命令:启用或禁用网卡(需要有网卡配置文件)

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

配置主机名

hostname命令:

查看:hostname

配置:hostname  HOSTNAME

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

hostnamectl命令(CentOS 7):

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

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

配置文件:/etc/sysconfig/network(CentOS6)

HOSTNAME=<HOSTNAME>

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

配置DNS服务器指向

配置文件:/etc/resolv.conf

nameserver   DNS_SERVER_IP

如何测试(host/nslookup/dig):

# dig  -t  A  FQDN(不会检查hosts)

FQDN --> IP

# dig  -x  IP

IP --> FQDN

2.iproute家族:

ip命令:

ip [ OPTIONS ] OBJECT { COMMAND | help }

OBJECT := { link | addr | route | netns  }

注意: OBJECT可简写,各OBJECT的子命令也可简写;i

1)ip link: network device configuration

ip  link  set - change device attributes,dev NAME (default):指明要管理的设备,dev关键字可省略;

up和down:开启或关闭接口

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

name NAME:重命名接口

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

ip link  show  - display device attributes

ip  link  help -  显示简要使用帮助;

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

2)ip netns: -manage network namespaces.

ip  netns  list:列出所有的netns

ip netns add NAME:创建指定的netns

ip netns del NAME:删除指定的netns

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

3)ip address - protocol address management.

ip  addr  add  IFADDR  dev  IFACE

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

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

[scope SCOPE_VALUE]:

global:全局可用;

link:接口可用;

host:仅本机可用;

ip addr  delete  IFADDR  dev  IFACE

ip  addr   list  [IFACE]:显示接口的

ip  addr  flush  dev  IFACE:清空指定接口配置

4)ip route:路由表管理命令

ip route add - add new route

ip route change - change route

ip route replace - change or add new one

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

示例:

# ip route add 192.168.0.0/24  via 10.0.0.1  dev eth1 src  10.0.20.100

# ip  route  add default  via

#ip  route  del  TYPE PRIFIX

#ip  route  get  TYPE PRIFIX

3.ss命令:

ss  [options]  [ FILTER ]

选项:

-t:TCP协议的相关连接

-u:UDP相关的连接

-w:raw socket相关的连接

-l:监听状态的连接

-a:所有状态的连接

-n:数字格式

-p:相关的程序及其PID

-e:扩展格式信息

-m:内存用量

-o:计时器信息

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  state  ESTABLISHED

四、配置文件:

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

IFACE:接口名称;

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

配置文件/etc/sysconfig/network-scripts/ifcfg-IFACE通过大量参数来定义接口的属性;其可通过vim等文本编辑器直接修改,也可以使用专用的命令的进行修改(CentOS 6:system-config-network (setup),CentOS 7: nmtui)

ifcfg-IFACE配置文件,如下图

网络服务:

network

NetworkManager

管理网络服务:

CentOS 6:   service  SERVICE  {start|stop|restart|status}

CentOS 7: systemctl  {start|stop|restart|status}  SERVICE[.service]

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

CentOS 6:# service  network  restart

CentOS 7:# systemctl  restart  network.service

用到非默认网关路由:/etc/sysconfig/network-scripts/route-IFACE

支持两种配置方式,但不可混用;

(1) 每行一个路由条目:

TARGET  via  GW

(2) 每三行一个路由条目:

ADDRESS#=TARGET

NETMASK#=MASK

GATEWAY#=NEXTHOP

给接口配置多个地址:

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

(1) ifconfig  IFACE_LABEL  IPADDR/NETMASK

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

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

DEVICE=IFACE_LABEL

BOOTPROTO:网上别名不支持动态获取地址;static, none

nmcli命令:

nmcli  [ OPTIONS ] OBJECT { COMMAND | help }

device - show and manage network interfaces

COMMAND := { status | show | connect | disconnect | delete | wifi | wimax }

connection - start, stop, and manage network connections

COMMAND := { show | up | down | add | edit | modify | delete | reload | load }

modify [ id | uuid | path ] <ID> [+|-]<setting>.<property> <value>

如何修改IP地址等属性:

# nmcli  conn  modify  IFACE  [+|-]setting.property  value

ipv4.address

ipv4.gateway

ipv4.dns1

ipv4.method

manual

时间: 2024-11-03 01:21:17

Linux网络配置基础篇的相关文章

Linux网络配置基础及命令使用

网络基础少不了,了解基本概念 MAC:Media Access Conctrol     网卡设备的固定且唯一的硬件地址,用于局域网通讯主机识别            IP:Internet Protocol     由网络号和主机号组成的通讯地址标识,用于界定源和目标主机 DNS:Domain Name System     1.DNS服务器是域名系统,用于解析主机名,实现基于主机名的通讯 2.全球的DNS服务器的域名数据都是相同的,备用DNS的作用是主DNS不可用时(挂掉)顶上,并非在主DN

LINUX网络配置基础

第一章Linux基础网络设置 要求: DHCP服务器的主机名为dhcpsvr.benet.com,IP地址为192.168.4.11/24 用于给局域网内各主机自动分配的IP地址范围为192.168.4.20~192.168.4.200 局域网内各主机使用的默认网关地址为192.168.4.1 局域网内各主机使用的DNS服务器地址分别为192.168.4.2和192.168.4.3,DNS服务器的主机名分别为ns1.benet.com和ns2.benet.com 网络打印机设备(可在网络内另找一

Linux网络配置及SSH和Shell基础

Linux网络配置及SSH和Shell基础 一.Linux网络配置     ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数.用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在.要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了. 二.hosts文件的作用及修改主机名      Hosts : The static table lookup for host name(主机名查询静态表)       Linux 的/etc/hosts是

linux入门基础——linux网络配置

linux网络配置 以太网连接 在linux中,以太网接口被命名为:eth0.eth1等,0.1代表网卡编号 通过lspci命令可以查看网卡硬件信息(如果是usb网卡,则需要使用lsusb命令) 命令ifconfig用来查看接口信息 ifconfig -a    查看所有接口 ifconfig 接口名字eth0    查看特定接口的信息 命令ifup.ifdown用来启用.禁用一个接口 ifup eth0 ifdown eth0 配置网络信息 使用setup命令可以配置网络信息 网络相关配置文件

Linux网络配置之二ip、ss、网络相关配置文件

本文续网络基础与Linux网络配置之一 ifconfig.route.netstat命令详解 ip命令 作用ip是iproute2软件包里面的一个强大的网络配置工具,它能够替代一些传统的网络管理工具,例如ifconfig.route等,使用权限为超级用户.几乎所有的Linux发行版本都支持该命令. 格式ip [ OPTIONS ] OBJECT { COMMAND | help }   OBJECT := { link | addr | route | netns  } 注:OBJECT可简写,

Linux网络配置详解

1.前言 对于LINUX而言,如果我们想对其进行网络配置的话,那么主要涉及到如下方面的配置: IP,子网掩码,网关,主机名,DNS服务器地址,路由信息. 那么下面,将对这些方面进行操作配置.如果大家对网络的有关知识,不太清楚的,可以参考我的博客:http://zhangfengzhe.blog.51cto.com/8855103/1438163 [这篇博客将快速让大家了解一些概念] 2.关于ifconfig [[email protected] ~]# ifconfig eth0      Li

linux网络配置相关文件

网络接口(interface)是网络硬件设备在操作系统中的表示方法,比如网卡在Linux操作系统中用ethX,是由0开始的正整数,比如eth0.eth1...... ethX.而普通猫和ADSL的接口是 pppX,比如ppp0等: 机器中所有可用网卡及名字: 参考:linux网络配置相关命令.虚拟网络接口eth0:0 网关GateWay配置地址: /etc/sysconfig/network  GATEWAY=192.168.1.250 /etc/sysconfig/network-script

解决遇到Linux网络配置,从熟悉网络配置文件入手

如果接触过Linux,网络配置是一个比较棘手的问题.但是Linux是文件为基础来构建的系统,包括我们windows中设备,Linux也视为文件.所以只要我们明白文件的作用.就能对Linux更加的熟悉,网络配置也是.所以为了熟悉和解决遇到Linux网络配置,首先从网络配置文件入手.这里面整理和汇集较多资料,从多角度,多篇文章,希望能耐心看完.一.简要概述DNS配置文件[[email protected] etc]# cat /etc/resolv.conf nameserver 210.36.16

linux网络配置和管理

网络很重要!网络是一切网络服务的基础,没有网络,就不会有今天的BTA.现在的服务器主要是linux,所以linux的网络配置和管理很重要. 一,网络通信的简介通信的三要素是:ip地址,掩码,路由.ip和netmask是必须有的,有了这两个条件,可以实现本地网络通信.如果有ip,netmask,route,就可以实现跨网段通信.还有一个点就是DNS,域名解析. 二,linux网络配置linux配置网络的方式很多,以下我从四个方向介绍网络的配置方式.从简单到难.1,图形界面方式2,伪图形界面方式3,