根据自己的需要来设置Linux的一些属性

网络状态查看

在终端输入ifconfig可以查看网络状态

# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.4.16 netmask 255.255.252.0 broadcast 10.0.7.255
inet6 fe80::5054:ff:fee5:a88b prefixlen 64 scopeid 0x20<link>
ether 52:54:00:e5:a8:8b txqueuelen 1000 (Ethernet)
RX packets 24244336 bytes 4246851961 (3.9 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 24130040 bytes 4921464849 (4.5 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 7038 bytes 896518 (875.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7038 bytes 896518 (875.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

eth0表示第一块网卡,inet表示IPv4地址,netmask表示子网掩码,ether表示网卡的MAC地址,下面的RX和TX和收发数据包的大小有关

lo表示本地回环,IP地址永远是127.0.0.1,常常用于本地测试

网络配置

通过以下命令可以修改IP地址:

ifconfig <接口> <IP地址> [netmask 子网掩码]
ifup <接口>
ifdown <接口>

例如使用ifconfig eth0 10.10.10.10就可以直接将IP修改为10.10.10.10

输入ifup eth0启动网卡,ifdown eth0关闭网卡

输入route -n 查看网关,这里输出的是路由表

# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.4.1 0.0.0.0 UG 100 0 0 eth0
10.0.4.0 0.0.0.0 255.255.252.0 U 100 0 0 eth0

如下是对这些字段的解释:

输出项 说明
Destination 目标网段或者主机
Gateway 网关地址,”*” 表示目标是本主机所属的网络,不需要路由
Genmask 网络掩码
Flags 标记。一些可能的标记如下:
U — 路由是活动的
H — 目标是一个主机
G — 路由指向网关
R — 恢复动态路由产生的表项
D — 由路由的后台程序动态地安装
M — 由路由的后台程序修改
! — 拒绝路由
Metric 路由距离,到达指定网络所需的中转数(linux 内核中没有使用)
Ref 路由项引用次数(linux 内核中没有使用)
Use 此路由项被路由软件查找的次数
Iface 该路由表项对应的输出接口

路由表是保存在 RAM 中的数据文件,其中存储了与直连网络以及远程网络相关的信息。路由表包含网络与下一跳的关联信息。这些关联告知路由器:要以最佳方式到达某一目的地,可以将数据包发送到特定路由器(即在到达最终目的地的途中的“下一跳”)。下一跳也可以关联到通向最终目的地的外发或送出接口。

使用route del可删除网关地址,使用route add可以添加网关地址

# route add -host 10.0.0.1 gw 10.0.4.17
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.4.1 0.0.0.0 UG 100 0 0 eth0
10.0.0.1 10.0.4.17 255.255.255.255 UGH 0 0 0 eth0
10.0.4.0 0.0.0.0 255.255.252.0 U 100 0 0 eth0

如上就直接向路由表添加了一行

# route del -host 10.0.0.1 gw 10.0.4.17

如上是删除

也可以向网段添加一条路由

# route add -net 192.168.0.0 netmask 255.255.255.0 gw 10.0.4.14
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.4.1 0.0.0.0 UG 100 0 0 eth0
10.0.4.0 0.0.0.0 255.255.252.0 U 100 0 0 eth0
192.168.0.0 10.0.4.14 255.255.255.0 UG 0 0 0 eth0

如上显示添加成功

网络故障排除

可以借助一些命令进行网络故障的排除

ping

检测与对方主机是否能连通

# ping www.baidu.com
PING www.a.shifen.com (110.242.68.4) 56(84) bytes of data.
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=1 ttl=51 time=25.5 ms
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=2 ttl=51 time=25.5 ms
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=3 ttl=51 time=25.5 ms
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=4 ttl=51 time=25.5 ms
--- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 25.509/25.512/25.517/0.003 ms

ping命令后接上主机名,发起ping请求,完成后下方会显示发送数据包的数量和丢包率以及延时

traceroute

该命令能输出网络数据包的路由路径

# traceroute -w 1 www.baidu.com
traceroute to www.baidu.com (112.80.248.76), 30 hops max, 60 byte packets
1 9.245.218.129 (9.245.218.129) 10.315 ms 10.525 ms 10.688 ms
2 * * *
3 10.196.39.233 (10.196.39.233) 0.610 ms 0.807 ms *
4 220.196.197.161 (220.196.197.161) 1.966 ms 10.196.95.33 (10.196.95.33) 1.683 ms 220.196.197.161 (220.196.197.161) 2.074 ms
5 * * *
6 220.196.196.13 (220.196.196.13) 3.170 ms 220.196.197.161 (220.196.197.161) 1.958 ms 220.196.196.13 (220.196.196.13) 3.148 ms
7 153.3.228.74 (153.3.228.74) 12.334 ms * 153.3.228.150 (153.3.228.150) 10.950 ms
8 * 219.158.104.218 (219.158.104.218) 5.527 ms 219.158.104.222 (219.158.104.222) 9.296 ms
9 182.61.216.0 (182.61.216.0) 8.884 ms 153.3.228.150 (153.3.228.150) 8.259 ms 153.3.228.142 (153.3.228.142) 8.873 ms
10 153.3.226.18 (153.3.226.18) 11.230 ms 153.37.96.134 (153.37.96.134) 12.598 ms *
11 * 182.61.216.0 (182.61.216.0) 10.106 ms *
12 * * *
13 * * *
14 * * *
15 * * *
16 * * *
17 * * *
18 * * *
19 * * *
20 * * *
21 * * *
22 * * *
23 * * *
24 * * *
25 * * *
26 * * *
27 * * *
28 * * *
29 * * *
30 * * *

记录按序列号从1开始,每个纪录就是一跳 ,每跳表示一个网关,我们看到每行有三个时间,单位是 ms。有时traceroute 一台主机时,会看到有一些行是以星号表示的。出现这样的情况,可能是防火墙封掉了ICMP的返回信息,所以我们得不到什么相关的数据包返回数据。

nslookup

该命令能够将域名解析为IP地址

# nslookup www.baidu.com
Server: 183.60.83.19
Address: 183.60.83.19#53 Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 112.80.248.75
Name: www.a.shifen.com
Address: 112.80.248.76

使用该命令检测域名是否能解析为IP

telnet

# telnet www.baidu.com 80
Trying 112.80.248.75...
Connected to www.baidu.com.
Escape character is '^]'.
^]
telnet> quit
Connection closed.

尝试连接目标主机的某个端口

tcpdump

流量抓包工具

# tcpdump -i any -n port 80
dropped privs to tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked v1), capture size 262144 bytes
....

使用-i可以制定网卡 -n port可以指定端口号

# tcpdump -i any -n host 10.0.0.1
dropped privs to tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked v1), capture size 262144 bytes

使用-n host可以指定主机IP

# tcpdump -i any -n host 10.0.0.1 and port 80
dropped privs to tcpdump
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked v1), capture size 262144 bytes

使用and连接,将两者都指定

netstat

输出网络连接状态

# netstat -ntpl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:36585 0.0.0.0:* LISTEN 401826/vim
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3151/sshd
tcp6 0 0 :::80 :::* LISTEN 440587/httpd

如上命令能够查看正在监听的服务,并且查看对应的进程,如sshd,该进程提供了远程控制服务,监听在22端口

网络配置文件

输入以下命令进入网络接口配置文件所在的目录

# cd /etc/sysconfig/network-scripts/

查看网卡接口对应的配置文件

# ls ifcfg-*
ifcfg-eth0 ifcfg-lo

查看文件内容

# cat ifcfg-eth0
BOOTPROTO=dhcp
DEVICE=eth0
DHCPV6C=yes
DHCPV6C_OPTIONS=-S
HWADDR=52:54:00:e5:a8:8b
IPV6INIT=yes
IPV6_AUTOCONF=yes
ONBOOT=yes
PERSISTENT_DHCLIENT=yes
TYPE=Ethernet
USERCTL=no

BOOTPROTO为dhcp表明IP地址是动态分配的,配置为static则为静态分配

ONBOOT为yes,表明开机时网卡会被启用,如果为no则要在开机后使用ifup启动网卡

Linux网络管理入门的更多相关文章

  1. 【转载】应读者强烈要求给出《超容易的Linux系统管理入门书》一书的主要知识点

    刚开始了一篇连载,收到广大Linux爱好者的反馈,非常欣慰.大家对Linux学习感到很迷茫,不知道学哪些内容,如何学习? <超容易的Linux系统管理入门书>一书是腾讯Linux专家在腾讯 ...

  2. Linux系统入门-Bash初识

    目录 Linux系统入门-Bash初识 Bash Shell介绍 Bash Shell的作用 Bash的两种使用方式 命令提示符 shell的基础语法 shell的基本特性 命令补全 linux快捷键 ...

  3. Linux Capabilities 入门教程:概念篇

    原文链接:Linux Capabilities 入门教程:概念篇 Linux 是一种安全的操作系统,它把所有的系统权限都赋予了一个单一的 root 用户,只给普通用户保留有限的权限.root 用户拥有 ...

  4. IT技术学习指导之Linux系统入门的4个阶段(纯干货带图)

    IT技术学习指导之Linux系统入门的4个阶段(纯干货带图) 全世界60%的人都在使用Linux.几乎没有人没有受到Linux系统的"恩惠",我们享受的大量服务(包括网页服务.聊天 ...

  5. Linux 基础入门(新版)”实验报告一~十二

    实验报告 日期: 2015年9月15日 一.实验的目的与要求 熟练地使用 Linux,本实验介绍 Linux 基本操作,shell 环境下的常用命令. 二.主要内容 1.Linux 基础入门& ...

  6. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

  7. Linux 基础入门 第二周9.21~9.27

    一.学习内容 本周主要学习内容主要贴合: 在进行<深入理解计算机系统>这门课的实验中没有遇到什么大问题,学习内容与上周实验<linux基础入门>有相似之处.本实验中的内容比较贴 ...

  8. 【转载】茶叶蛋干货!《超容易的Linux系统管理入门书》(连载十)进行动态主机配置DHCP

    使用动态主机配置协议DHCP(Dynamic Host Configuration Protocol)则可以避免网络参数变化后一些繁琐的配置,客户端可以从DHCP服务端检索相关信息并完成相关网络配置, ...

  9. 【转载】绝对干货!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载九)如何通过源代码安装软件

    除了使用Linux的包管理机制进行软件的安装.更新和卸载,从源代码进行软件的安装也是非常常见的,开源软件提供了源代码包,开发者可以方便的通过源代码进行安装.从源码安装软件一般经过软件配置.编译软件.执 ...

  10. 【转载】干货再次来袭!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载八)用命令实现批量添加用户

    Windows添加用户需要至少5个界面,而Linux一条命令就搞定了,这是不是高效人士办公第一法则呢.本文不给你一堆参数和选项,不让你见识教条主义,只给你最实用的代码. 想每天能听到小妞的语音播报,想 ...

随机推荐

  1. 批量cp时中断,原来是被cp的alias干扰了

    背景 批量复制一批数据的质控结果的时候,由于表格中出现一个重复项,导致卡在是否覆盖的提示这里 结果该重复项之后的样本都没有复制成功,差点就漏掉一部分样本啊-- cat ../sampleList|wh ...

  2. sql优化分三个方向

    SQL 规范性检查 select 检查 UDF 用户自定义函数 SQL 语句的 select 后面使用了自定义函数 UDF,SQL 返回多少行,那么 UDF 函数就会被调用多少次,这是非常影响性能的. ...

  3. json提取器通过多条件筛选提取ID

    可能在某些列表中如名称会有重复,此时就需要使用多个搜索条件来判定唯一性 $.data.[?(@.tymc=="测试测试")].[?(@.plat_merchandise_id==& ...

  4. 如何像Facebook一样构建数据中心 – BGP在大规模数据中心中的应用(3)

    如何像Facebook一样构建数据中心 – BGP在大规模数据中心中的应用(3) superrace• 18-06-12 作者简介:史梦晨,曾就职于国内金牌集成商, 现就职于EANTC( 欧洲高级网络 ...

  5. DB2通过java代码生成自定义uuid()函数

    一.简单的方法 此种方法在快速大量生成时,会有重复 SELECT concat (hex (RAND ()), hex (RAND ())) as uuid FROM SYSIBM.SYSDUMMY1 ...

  6. python random包常用函数

    random.random() random.random()方法返回一个随机数,其在0至1的范围之内,以下是其具体用法: import random print ("随机数: " ...

  7. 记一个jdbc创建数据库、用户操作时,创建新用户提示CREATE USER权限问题

    手写存储表数据库信息,访问链接动态数据源操作: mysql: 1.root登录服务器 进入数据库 mysql -u root -p2.创建数据库 create database shop; shop ...

  8. 整合Swagger2

    整合Swagger2 1.Swagger介绍 前后端分离开发模式中,api文档是最好的沟通方式. Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web ...

  9. # 1. C++概述

    1. C++概述 1.1 c++简介 "c++"中的++来自于c语言中的递增运算符++,该运算符将变量加1.c++起初也叫"c with clsss".通过名称 ...

  10. Golang 实现 RTP

    在 Coding 之前我们先来简单介绍一下 RTP(Real-time Transport Protocol), 正如它的名字所说,用于互联网的实时传输协议,通过 IP 网络传输音频和视频的网络协议. ...