编辑网络配置文件

今天我学了linux的网络配置。

首先是检查网络的配置,可以确定网络接口、网络地址。

显示当前所有接口的ip地址和子网掩码
ip addr

也可以针对某一网卡显示信息,比如第一个网卡,就是eth0

显示第一块网卡的的信息
ip -s link show eth0

发现连接问题后,可以使用ping测试连接性

ping -c3 172.25.25.254

针对ip命令的相关参数,我在网上找了一下,附上来,比如-s 是什么意思 link是什么意思 -c3是什么意思


ip命令用来显示或操纵Linux主机的路由、网络设备、策略路由和隧道,是Linux下较新的功能强大的网络配置工具。

语法 ip(选项)(参数) 选项

-V:显示指令版本信息;

-s:输出更详细的信息;

-f:强制使用指定的协议族;

-4:指定使用的网络层协议是IPv4协议;

-6:指定使用的网络层协议是IPv6协议;

-0:输出信息每条记录输出一行,即使内容较多也不换行显示;

-r:显示主机时,不使用IP地址,而使用主机的域名。

-c count是数量,-c3 即发三个ping 包

link  这个参数选项前面不加-  意思是设备硬件的MAC地址,为什么不加- 我也不知道哩 好像是和show或ip一样是个命令吧。我是这样理解的。

参数

网络对象:指定要管理的网络对象;

具体操作:对指定的网络对象完成具体操作;

help:显示网络对象支持的操作命令的帮助信息。

来自: http://man.linuxde.net/ip

比如我找到的这个博客举的例子:

用ip命令显示网络设备的运行状态

[[email protected] ~]# ip link list

1: lo: <loopback,up,lower_up>mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: eth0: <broadcast,multicast,up,lower_up>mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:16:3e:00:1e:51 brd ff:ff:ff:ff:ff:ff

3: eth1: <broadcast,multicast,up,lower_up>mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:16:3e:00:1e:52 brd ff:ff:ff:ff:ff:ff

显示更加详细的设备信息

[[email protected] ~]# ip -s link list

1: lo: <loopback,up,lower_up>mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 RX: bytes packets errors dropped overrun mcast 5082831 56145 0 0 0 0 TX: bytes packets errors dropped carrier collsns 5082831 56145 0 0 0 0

2: eth0: <broadcast,multicast,up,lower_up>mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:16:3e:00:1e:51 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 3641655380 62027099 0 0 0 0 TX: bytes packets errors dropped carrier collsns 6155236 89160 0 0 0 0

3: eth1: <broadcast,multicast,up,lower_up>mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:16:3e:00:1e:52 brd ff:ff:ff:ff:ff:ff RX: bytes packets errors dropped overrun mcast 2562136822 488237847 0 0 0 0 TX: bytes packets errors dropped carrier collsns 3486617396 9691081 0 0 0 0

显示核心路由表

[[email protected] ~]# ip route list

112.124.12.0/22 dev eth1 proto kernel scope link src 112.124.15.130 10.160.0.0/20 dev eth0 proto kernel scope link src 10.160.7.81 192.168.0.0/16 via 10.160.15.247 dev eth0 172.16.0.0/12 via 10.160.15.247 dev eth0 10.0.0.0/8 via 10.160.15.247 dev eth0 default via 112.124.15.247 dev eth1

显示邻居表

[[email protected] ~]# ip neigh list

112.124.15.247 dev eth1 lladdr 00:00:0c:9f:f3:88 REACHABLE 10.160.15.247 dev eth0 lladdr 00:00:0c:9f:f2:c0 STALE

来自: http://man.linuxde.net/ip

大神们的命令可以通过格式化地,进行表示,我却不知道如何去格式化,更好的显示出来易读性。我要学习的地方很多。

其它在检查网络配置中,使用的命令和大神举的例子差不多,用到了 ip addr 显示所有接口的当前ip和掩码,ip -s link show eth0 输出第一块网卡更详细的信息,其中包含了设备的MAC,从这里可以看出link show 和ip一样,是命令。我是这样理解的。 ip route ,显示路由信息。 ping -c3 172.25.25.254 向ip为172.25.25.254 发送3个ping包。

有一条奇怪的命令,书上没有说,却直接用了。我也闹不懂这是什么意思。


说是显示本地系统和classroom.example.com这个主机之间的所有跃点,啥子是跃点?可能是翻译的问题。不懂。看下这条奇怪的命令:

$ tracepath classroom.example.com

下面又出现了一条没有说明的命令,这个真的莫名。说是显示本地系统上侦听的TCP套接字: $ ss -lt

上面这2条命令,不知道要说明什么。

下面就学到了用nmcli 配置网络:使用nmcli 和 NetworkManager管理网络设置和设备。我以为nmcli和NetworkManager是2条命令,可是全篇只看到使用nmcli,这里也很困惑。

查看网络信息,如果要只是列出活动的连接,可以在下面命令后面加--active 选项
nmcli con show

指定一个设备,查看连接信息:nmcli con show "static-eth0"

显示设备状态和详细信息:nmcli dev status

显示指定设备状态和详细信息:nmcli dev show eth0

下面就形如创建网络连接,使用nmcli命令

书上说:nmcli 创建网络连接时,参数的顺序很重要,首先是共用参数,必须包含类型接口。其次指定任何与类型相关的参数,最后指定IP地址前缀和网关信息。还说可以为一个设备指定多个IP。其它的设置比如DNS可以在连接建立好后,再个修改。

例子1:定义一个名为"default"的新连接,使用DHCP通过eth0网卡用以太网的连接方式自动连接,# nmcli con add con-name "default" type ethernet ifname eth0

例子2:建立一个名为"static"的连接,指定IP和网关,不要自动连接。 # nmcli con add con-name "static" ifname eth0 autoconnect no type ethernet ip4 172.25.25.254/24 gw172.25.25.254 这条命令我基本能看懂,就是不知道gw是什么意思,我也不知道去哪里找,man nmcli 也没有找到。gw是什么意思,看上去像DNS或者是其它意思吧。/24是指1后面有24个0,掩码的意思。

下面就是在系统启动时把“通过DHCP自动连接”更改为静态连接,可能设置好ip4,激活一下,就算静态连接了,不过看到有的教程说,系统启动有效,需要更改配置文件。不说了,先把这条命令写出来过# nmcli con up "static"

附一下网上找到的配置文件目录:

网络配置文件:
/etc/sysconfig/network    说是全局设置,默认里面啥也没有,可以添加全局默认网关
/etc/hostname              用nmtui修改hostname后,主机名保存在这里
/etc/resolv.conf             保存DNS设置,不需要手工改,nmtui里面设置的DNS会出现在这里
/etc/sysconfig/network-scripts/       连接配置信息 ifcfg 文件
/etc/NetworkManager/system-connections/  VPN、移动宽带、PPPoE连接

书上又说,再改回DHCP连接: # nmcli con up "default"  , 这是上面2个例子的练习,学的有点懵懂。没有基础真是太难了。

书上有个提示说如果静态连接丢失,默认连接会自动连接上去。防止自动连接的方法是,用管理员身份,禁用某一接口:nmcli dev disconnect DEVICENAME,还有些wifi类型、网桥啥子的类型,可以用nmcli con add help来查看类型的选择。上面的例子只用到了以太网。

下面就进入了另一个练习场景:

通过nmcli修改网络接口:

用到了nmcli con mod

用nmcli con show "[ID]" 查看连接的列表

比如查看static的连接列表,#nmcli con show "static"

例子:

关闭自动连接: # nmcli con mod "static" connection.autoconnect no

指定DNS服务器: # nmcli con mod "static" ipv4.dns 172.25.25.254

书上提到说可以用+/-来增加或删除一些配置参数值。比如增加一条辅助的DNS

nmcli con mod "static" +ipv4.dns 8.8.8.8

替换静态IP和网关

# nmcli con mod "static" ipv4.addresses 172.25.25.10/24 172.25.25.254" 这条命令可能是把前面的换成后面,就是后面的172.25.25.254被覆盖了吧。书上没写,我在实验中,试了,也没闹清楚。

后面又增加了一条没有网关的辅助IP  . # nmcli con mod "static" +ipv4.addresses 10.10.10.10/16

保存一,要激活一下连接,才能使用。 # nmcli con up "static"

下面列一个nmcli的命令摘要

nmcli dev status  列出所有设备
nmcli con show  列出所有连接
nmcli con up "<ID>" 激活连接
nmcli con down "<ID>" 取消激活连接,如果自动重新连接值:yes,则连接将重新启动。重新启动就是重新连接吧,也就是说要取消连接,先保证配置文件值为no,在哪个文件修改不知道,使用nmcli con mod "<ID>" connection.autoconnect no  应当可以吧,有空我再问问百度
nmcli dev dis <DEV> 中断接口,并且暂时禁用自动连接
nmcli con off ... 禁用所有管理的接口
nmcli con add ... 添加新连接
nmcli con mod "<ID>"... 修改连接
nmcli con del "<ID>" 删除连接

说了半天,后面又说,可以图形化编辑。进入图形化编辑命令是:nm-connection-editor

不懂这本书的作者要表述什么。难道我遇到大坑神了???!

时间: 2024-10-22 00:47:09

编辑网络配置文件的相关文章

Docker 编辑网络配置文件

Docker 1.2.0 开始支持在运行中的容器里编辑 /etc/hosts, /etc/hostname 和 /etc/resolve.conf 文件. 但是这些修改是临时的,只在运行的容器中保留,容器终止或重启后并不会被保存下来.也不会被 docker commit 提交. 原文地址:https://www.cnblogs.com/navysummer/p/8455121.html

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

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

Linux_常用网络配置文件介绍

本文主要介绍Linux下的常用网络配置文件: /etc/sysconfig/network /etc/hosts /etc/services /etc/host.conf /etc/nsswitch.conf /etc/resolv.conf /etc/xinetd.conf /etc/modules.conf /etc/sysconfig/network-scripts/ifcfg-ethN 接下来我们对这些文件逐一讲述. 1. /etc/sysconfig/network 用于指定服务器上的

2018-4-17Linux系统管理(18)(19)网络配置命令及网络配置文件

在前面的章节当中我们讲述了计算网络通信的基础知识,介绍网络的拓扑结构类型及对于Linux来说的网络属性如何进行相关配置,而后有介绍了TCP/IP的协议栈,而这个协议栈是计算机真正使用的协议栈,以分层的概念将复杂问题进行切割,每层都有其相关的协议,都能够独立且相互调用可以协作完成.该协议栈共有四层,分别为物理层.互联网层.传输层及应用层进行组合.而对于底层来讲,作为运维的话我们无需掌握很多,不过我们也必须稍微进行一个了解,比如在互联网层中最为最重要的协议是IP协议,而在传输层中最为重要的协议为TC

Linux编辑网络连接

Linux编辑网络连接   实验目标: 通过本实验掌握新建网络连接.修改hosts文件.修改主机名的方法. 实验步骤: 1.新建一个名为review的网络连接,并配置ip地址,启用新连接 2.修改hosts文件,将刚才配置的ip地址和“myhost”名称对应 3.  将系统主机名设置为centos 参考命令:   1.查看现有连接 2.新建连接 3.配置地址并启动新连接 一个网卡的两个连接配置,只能一个启用,其他作为备选. 如果需要一个网卡配置多个ip,需要修改网卡配置文件实现 4.给ip地址一

.net core之编辑json配置文件

.net core之编辑json配置文件 引言 最近在具体项目开发应用中,项目采用的json格式配置文件,配置文件的加载采用的IConfiguration接口对象进行的管理,这是.net standard时代,微软所提供的现代化的配置管理工具. 项目设计中,需要在运行过程中,将远程服务端发送过来的配置信息回写到配置文件中.然而,必应也好,百度也罢,翻遍网络,这套现代化的配置管理模型中,却找不到一个可以改变配置回写的方法. 无奈之下,只好自己动手,手动造轮子了. .NET Standard时代的配

配置使用vim编辑Nginx配置文件时语法高亮

vim是Unix系统中非常实用的文本编辑器,它和传统的vi相比最大的区别在于它所支持的配色方案,这个功能使得平时编辑一些配置文件或者是在写代码的时候极大的提高工作效率,如果我们在系统中有安装vim相应的包且开启了syntax配色方案的时候会不显示语法高亮往往是配置设置错误所引起的.一般配置错误有2个地方:1.是远程服务器的仿真客户终端配置错误:2.是服务器上环境变量配置错误.在这里就用SecureCRT仿真客户终端为例子简单的说一下vim开启syntax配色方案: 在SecureCRT上需要配置

二、网络配置文件

在网络配置工具中所有看到的配置信息,都是存放在Linux系统的网络配置文件中.所有用户可以通过直接更改配置文件的方法来对网络信息进行配置. 2.1.网络设备配置文件 网络配置工具的设备列表框中的每一个设备,在/etc/sysconfig/network-scripts/目录下都有一个以'<ifcfg-<设备名>'命名的文件与之对应.使用ifconfig命令可以查看所有活动接口的相关信息.在更改配置文件信息时需要重启网络服务方可生效. 设备配置/etc/sysconfig/network-

网络配置文件、命令详解

一.网络服务.配置文件 二.ifconfig常用命令 三.route常用命令 四.ip命常用命令 五.其他 一.网络服务.配置文件 修改网络服务配置文件不会立即生效,重启网络服务或主机后生效且永久有效 1.配置文件 1.1.网络配置文件:/etc/sysconfig/network [[email protected] ~]# cat /etc/sysconfig/network NETWORKING=yes    #是否启用主机网络功能  HOSTNAME=TESTHOST    #设置主机名