百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 优雅编程 > 正文

Linux系统网络基本命令(linux基本网络配置命令)

sinye56 2024-11-13 12:32 35 浏览 0 评论

1. ifconfig 查看网卡IP

ifconfig类似与windows的ipconfig, 不加任何选项和参数只打印当前网卡的IP相关信息(子网掩码、网关等)。

在windows下设置IP非常简单, 然而在命令窗口下如何设置? 这就需要去修改配置文件/etc/sysconfig/network-scripts/ifcfg-eth0了, 如果是eth1那么配置文件是/etc/sysconfig/network-scripts/ifcfg-eth1.

如果Linux上有多个网卡, 而只想重启某一个网卡的话, 可以使用这个命令:

> # ifdown eth0; ifup eth0

ifdown 即停掉网卡, ifup即启动网卡。有一点要提醒你的是, 如果我们远程登录服务器, 当使用ifdown eth0这个命令的时候, 很有可能后面的命令ifup eth0不会被运行,

这样导致我们断网而无法连接服务器, 所以请尽量使用 service network restart 这个命令来重启网卡。

2. 给一个网卡设定多个IP

在linux系统中, 网卡是可以设定多重IP的。

> # cd /etc/sysconfig/network-scripts/

> # cp ifcfg-eth0 ifcfg-eth0\:1

然后编辑ifcfg-eth0:1 这个配置文件, 内容如下, 一定要注意 DEVICE 这里要写成 "eth0:1", 带冒号(:)后面要加"\"

> # cat ifcfg-eth0\:1

DEVICE=eth0:1

HWADDR=00:0C:29:D9:F0:52

TYPE=Ethernet

UUID=a5442526-0329-421d-86cf-8d7f16d01374

ONBOOT=yes

BOOTPROTO=none

IPADDR=192.168.80.5

NETMASK=255.255.255.0

GATEWAY=192.168.80.2

NM_CONTROLLED=yes

vim ifcfg-eth0\:1

编辑好后, 重启网卡:

> # ifdown eth0 && ifup eth0

之后再查看网卡ip:

> # ifconfig

eth0 Link encap:Ethernet HWaddr 00:0C:29:D9:F0:52

inet addr:10.72.137.159 Bcast:10.72.137.255 Mask:255.255.255.0

inet6 addr: fe80::20c:29ff:fed9:f052/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:2587605 errors:2 dropped:0 overruns:0 frame:0

TX packets:773070 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:1934306928 (1.8 GiB) TX bytes:54602387 (52.0 MiB)

Interrupt:18 Base address:0x1080

eth0:1 Link encap:Ethernet HWaddr 00:0C:29:D9:F0:52

inet addr:192.168.80.5 Bcast:192.168.80.255 Mask:255.255.255.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

Interrupt:18 Base address:0x1080

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:39 errors:0 dropped:0 overruns:0 frame:0

TX packets:39 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:16066 (15.6 KiB) TX bytes:16066 (15.6 KiB)

可以看到多了一个ip。

3. 绑定虚拟网卡

ifconfig eth0:1 10.1.1.1/24其中24代表24位掩码

或者ifconfig eth0:1 10.1.1.1 netmask 255.255.255.0

10.1.1.1/32是指32个1, 也就是255.255.255.255

Linux-eth0 eth0:1 和eth0.1关系、ifconfig以及虚拟IP实现介绍

eth0 eth0:1 和eth0.1三者的关系对应于物理网卡、子网卡、虚拟VLAN网卡的关系:

4. 查看网卡连接状态

> # mii-tool eth0

SIOCGMIIPHY on 'eth0' failed: Operation not supported

如果是在服务器上不会显示成这样的, 由于是虚拟机(也包括腾讯云主机)所以显示 "not supported", 如果是真机应该显示如下内容:

> # mii-tool eth0

eth0: negotiated 100baseTx-FD, link ok

只要看到 "link ok" 就说明网卡为连接状态, 如果显示 "no link" 说明网卡坏掉了或者没有连接网线。

5. 更改主机名

当装完系统后, 默认主机名为localhost, 使用hostname就可以知道你的linux的主机名是什么:

> # hostname

localhost.localdomain

同样使用hostname可以更改你的主机名:

> # hostname Aming

> # hostname

Aming

下次登录时就会把命令提示符 [root@localhost ~] 中的 localhost 更改成 Aming 不过这样修改只是保存在内存中, 下次重启还会变成未改之前的主机名,

所以需要你还要去更改相关的配置文件 "/etc/sysconfig/network"

> # vim /etc/sysconfig/network

NETWORKING=yes

HOSTNAME=Aming.localdomain

6. 设置DNS

DNS是用来解析域名用的, 平时我们访问网站都是直接输入一个网址, 而dns把这个网址解析到一个IP。

在linux下面设置dns非常简单, 只要把dns地址写到一个配置文件中即可。这个配置文件就是/etc/resolv.conf

> # vim /etc/resolv.conf

; generated by /sbin/dhclient-script

nameserver 202.106.46.151

resolv.conf有它固有的格式, 一定要写成 "nameserver IP" 的格式, 上面那行以 ';' 为开头的行是一行注释, 没有实际意义,

建议写两个或多个namserver, 默认会用第一个namserver去解析域名, 当第一个解析不到时会使用第二个。

在linux下面有一个特殊的文件/etc/hosts也能解析域名, 不过是需要我们手动在里面添加IP+域名这些内容, 它的作用是临时解析某个域名, 非常有用。

> # vim /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.1.111 www.baidu.com

保存后, 再ping一下 www.baidu.com 就会到 192.168.1.111 了:

> # ping www.baidu.com

PING www.baidu.com (192.168.1.111) 56(84) bytes of data.

/etc/hosts 的格式很简单, 每一行作为一条记录, 分成两部分, 第一部分是IP, 第二部分是域名。关于hosts文件, 有几点需要你注意:

1)一个IP后面可以跟多个域名, 可以是几十个甚至上百个;

2)每行只能有一个IP, 也就是说一个域名不能对应多个IP;

3)如果有多行中出现相同的域名(前面IP不一样), 会按最前面出现的记录来解析。

7. 查看网卡设备

ethtool 用于查询或控制网络驱动或硬件设置。

> # ethtool eth0

检查特定网络接口的速度

> # ethtool eth0 | grep "Speed:"

Speed: 10000Mb/s

重要文件

/etc/hosts:IP地址及名字

/etc/networks:IP地址及网络名字

/etc/protocols:协议号及协议名字

/etc/services:tcp/udp服务名字对应的端口号

工具以及网络性能分析

ifconfig:查看和设置网卡信息

ifconfig [up]:开启接口

ifup:启动网卡, 需要root权限, 【语法:ifup 网卡名称】, Linux的网卡名称的命名是这样的:ethX, eth表示网卡, X表示第几块网卡, 一般是eth0。

ifconfig [down|delete]:停止接口

ifdown:禁用网卡, 同样也需要root权限, 【语法:ifup 网卡名称】

ping 测试目的机和本机的连接状况。

tcpdump -i -vvv:抓取和分析数据包的工具

netstat -w[seconds] -l[interface]:显示网络设置和数据 查询htppd服务端口号 netstat -lnp | grep httpd

setup: 设置公用程序, 是一个启动图形界面(如下图)设置系统的命令。可以用来配置系统服务, 网络配置, 防火墙配置等。

各版本的网卡配置文件汇总

centOS7.6 CentOS-7-x86_64_Minimal-1810.iso ifcfg-ens33

网络连通性

Ping:发送一个ICMP回声请求消息给主机,一直持续到到你按下Ctrl+C。Ping表示一个包通过ICMP从你的机器发送出去,然后在IP层得到回应。Ping可以检测你与另一台主机是否连通。

Telnethost:在指定的端口与主机交互。telnet端口默认是23。其他比较常用的端口有回送端口7,用来发送邮件SMTP25,用户查询79。使用Ctrl+]退出telnet。

ARP

ARP是用来将IP地址转换为以太网地址的。Root用户可以增加/删除ARP条目。其中ARP的条目都是缓存在内核中的,一般在20分钟后会自动删除。但root用户可以创建永久性的ARP条目。

arp-a:打印ARP表

arp-s[pub]:增加条目

arp-a-d:删除所有条目

路由

netstat-r:打印路由表。路由表存储在内核中,ip通过它来将包发送到外网。

routed:执行动态路由选择的BSD守护进程。实现RIP路由协议。只能在root权限下使用。

gated:gated是实现RIP的另一个路由守护进程。同时使用OSPF/EGP/RIP。只能在root权限下使用。

traceroute:可用来追踪IP数据包经过的路由信息。

netstat-rnfinet:可显示IPv4的路由表。

sysctlnet.inet.ip.forwarding=1:使数据包继续传递(把一个主机变成路由)。

route:route命令用来在路由表中设置静态路由。所有从PC到IP/SubNet的信息都要经过指定的网关IP。这命令还可以用来设定默认路由。

routeadd|delete[-net|-host]:添加/删除静态路由(如:routeadd192.168.20.0/24192.168.30.4)。

routeflush:删除所有路由。

routeadd-net0.0.0.0192.168.10.2:增加一个默认路由。

其他

nslookup:通过查询DNS服务器将IP转换成名字, 或把名字转换成IP。比如,nslookupubuntukylin.com会得到ubuntukylin.com的IP地址。

ftp:在本地主机和远程主机之间传送文件。

rlogin:远程登陆主机。

简单的基础介绍, 希望可以帮助新手对网络、主机名和路由配置有一定了解。

网卡设置:

位置:/etc/sysconfig/network-scripts/ifcfg-eth0

修改ip内容为:

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

NETMASK=255.255.255.0

IPADDR=192.168.1.31

GETWAY=192.168.1.1

修改dns:

位置:/etc/resolv.conf

nameserver 8.8.8.8

search localdomain

修改主机名:

位置:/etc/sysconfig/network

网卡控制:

ifdown eth0关闭

ifup eth0开启

service network restart|start|stop

路由控制:

1、-n 不要使用通讯协定或主机名称, 直接使用ip或port number

2、-ee 使用更信息的咨询来显示

3、增加(add)与删除(del)路由器的相关参数

-net:表示后面接的路由器为一个局域网

-host:表示后面接的为连接到单部主机的路由

netmask:与网关有关, 可以设定netmask决定网域大小

gw:geteway, 后续接的是ip的数值

dev:如果只是要指定由那一块网卡连出去, 则使用这个设定, 后面接eth0

route add –net 192.168.1.0 netmask 255.255.255.0 dev eth0

实时网络监控命令

如果你的服务器使用zabbix或者监控宝进行监控。可以通过他们来查看网卡的历史流量。

但当收到告警, 或需要排查问题时, 就需要登陆服务器实时的查看当前的网络流量, 看是否有异常。

以下三个命令从三个不同的维度进行实时流量的监控:

nload

查看当前指定网卡的流量概览。

# nload -a 5 -i 2000 -o 2000 -u m eth0

iftop

查看本地与远端通信主机端口的流量情况。

# iftop -nNP -i eth0

nethogs

查看本地进程网络流量情况。

# nethogs eth1

要在CentOS上安装他们, 需要先配置好epel源再使用yum进行安装。

相关推荐

程序员:JDK的安装与配置(完整版)_jdk的安装方法

对于Java程序员来说,jdk是必不陌生的一个词。但怎么安装配置jdk,对新手来说确实头疼的一件事情。我这里以jdk10为例,详细的说明讲解了jdk的安装和配置,如果有不明白的小伙伴可以评论区留言哦下...

Linux中安装jdk并配置环境变量_linux jdk安装教程及环境变量配置

一、通过连接工具登录到Linux(我这里使用的Centos7.6版本)服务器连接工具有很多我就不一一介绍了今天使用比较常用的XShell工具登录成功如下:二、上传jdk安装包到Linux服务器jdk...

麒麟系统安装JAVA JDK教程_麒麟系统配置jdk

检查检查系统是否自带java在麒麟系统桌面空白处,右键“在终端打开”,打开shell对话框输入:java–version查看是否自带java及版本如图所示,系统自带OpenJDK,要先卸载自带JDK...

学习笔记-Linux JDK - 安装&配置

前提条件#检查是否存在JDKrpm-qa|grepjava#删除现存JDKyum-yremovejava*安装OracleJDK不分系统#进入安装文件目...

Linux新手入门系列:Linux下jdk安装配置

本系列文章是把作者刚接触和学习Linux时候的实操记录分享出来,内容主要包括Linux入门的一些理论概念知识、Web程序、mysql数据库的简单安装部署,希望能够帮到一些初学者,少走一些弯路。注意:L...

测试员必备:Linux下安装JDK 1.8你必须知道的那些事

1.简介在Oracle收购Sun后,Java的一系列产品就被整合到Oracle官网中,打开官网乍眼一看也不知道去哪里下载,还得一个一个的摸索尝试,而且网上大多数都是一些Oracle收购Sun前,或者就...

Linux 下安装JDK17_linux 安装jdk1.8 yum

一、安装环境操作系统:JDK版本:17二、安装步骤第一步:下载安装包下载Linux环境下的jdk1.8,请去官网(https://www.oracle.com/java/technologies/do...

在Ubuntu系统中安装JDK 17并配置环境变量教程

在Ubuntu系统上安装JDK17并配置环境变量是Java开发环境搭建的重要步骤。JDK17是Oracle提供的长期支持版本,广泛用于开发Java应用程序。以下是详细的步骤,帮助你在Ubuntu系...

如何在 Linux 上安装 Java_linux安装java的步骤

在桌面上拥抱Java应用程序,然后在所有桌面上运行它们。--SethKenlon(作者)无论你运行的是哪种操作系统,通常都有几种安装应用程序的方法。有时你可能会在应用程序商店中找到一个应用程序...

Windows和Linux环境下的JDK安装教程

JavaDevelopmentKit(简称JDK),是Java开发的核心工具包,提供了Java应用程序的编译、运行和开发所需的各类工具和类库。它包括了JRE(JavaRuntimeEnviro...

linux安装jdk_linux安装jdk软连接

JDK是啥就不用多介绍了哈,外行的人也不会进来看我的博文。依然记得读大学那会,第一次实验课就是在机房安装jdk,编写HelloWorld程序。时光飞逝啊,一下过了十多年了,挣了不少钱,买了跑车,娶了富...

linux安装jdk,全局配置,不同用户不同jdk

jdk1.8安装包链接:https://pan.baidu.com/s/14qBrh6ZpLK04QS8ogCepwg提取码:09zs上传文件解压tar-zxvfjdk-8u152-linux-...

运维大神教你在linux下安装jdk8_linux安装jdk1.7

1.到官网下载适合自己机器的版本。楼主下载的是jdk-8u66-linux-i586.tar.gzhttp://www.oracle.com/technetwork/java/javase/downl...

window和linux安装JDK1.8_linux 安装jdk1.8.tar

Windows安装JDK1.8的步骤:步骤1:下载JDK打开浏览器,找到JDK下载页面https://d.injdk.cn/download/oraclejdk/8在页面中找到并点击“下载...

最全的linux下安装JavaJDK的教程(图文详解)不会安装你来打我?

默认已经有了linux服务器,且有root账号首先检查一下是否已经安装过java的jdk任意位置输入命令:whichjava像我这个已经安装过了,就会提示在哪个位置,你的肯定是找不到。一般我们在...

取消回复欢迎 发表评论: