- 内容摘要
- 一.linux网络设置
- 二.linux时间和日期设置
- 三.linux语系设置
- 四.linux防火墙设置
网络参数获取方式
回到顶部
linux网络设置是系统管理员最基本的技能。网络设置需要了解网络IP、gateway、netmask等参数,
如果要连接Internet, 或者架设(拥有自己的域名)www服务器,就得要理解DNS,在某些情况下可能需要自己架设DNS服务器。
在架设网络服务器之前必须先理解网络基础知识!
网络安全也是系统管理员时刻关注的问题!
这里仅介绍Linux客户端的网络网络,而非服务器!
通常网络参数的取得方式常见的有底下这几种:
1.手动设置固定IP:
要想让linux能够连接上网,必须获取如下几个参数:
IP;2.自动获取网络参数(DHCP):
子网掩码(netmask);
通讯网关(gateway);
DNS主机的IP;
常见于IP分享器后端的主机,或者是利用电视线路的缆在线网 (cable modem),或者是学校宿舍的网络环境等。 这种网络参数获取方式称为DHCP
3.光纤与ADSL宽带连接
不论是固定IP还是动态获取IP,只要是通过光纤到户或宽带调制解调器拨接上网的,就是使用这种方式。 拨接上网虽然还是使用网络卡连接到调制解调器上,不过,系统最终会产生一个替代调制解调器的网络接口(ppp0),ppp0 也是一个实体网络接口!
调制解调器内部已经包含了IP分享与自动拨接功能,只需要自动取得IP的方式来取得网络参数!
我们通过网卡连接网络。目前主流网卡为以太网络协议所开发出来的以太网卡(Ethernet),Linux称这种网络接口为ethN(N为数字)。
initroot这部测试机上面有一张以太网卡,网络接口就是eth0,第一张从0号开始。
CentOS 7则自己一套新的网卡编号规则,与网卡的硬件接口有关,基本上的网卡名称会是这样分类的:
eno1 :代表主板 BIOS 内建的网卡;
ens1 :代表主板 BIOS 内建的 PCI-E 接口的网卡;
enp2s0 :代表 PCI-E 接口的独立网卡,可能有多个插孔,因此会有 s0, s1...;
eth0 :如果上述的名称都不适用,就回到原本的默认网卡编号;
ifconfig -a命令直接列出全部的网卡!CentOS 7不希望手动修改配置文件, 而是直接使用nmcli命令设置网络参数.
因为测试机是虚拟机,上述的网卡代号只有eth0,你得要自己看自己的系统上面的网卡代号!
手动设置IP网络参数
回到顶部
假设你已经向ISP取到了你的网络参数,基本上的网络参数需要这些:
method: manual(手动设置); IP: 172.16.1.1; netmask: 255.255.0.0; gateway: 172.16.200.254; DNS: 172.16.200.254; hostname: study.centos.initroot;hostname可以暂时忽略,要上网就必须设置上面的这些参数! 然后通过nmcli来处理!,nmcli通过一个名为联机代号的名称来设置是否要上网,而每个联机代号会有个网卡代号, 这两个东西通常设置成相同就可以了。
nmcli命令需要开启NetworkManager服务。先来查查目前系统上默认有什么联机代号:
[root@study ~]# nmcli connection show [网卡代号] [root@study ~]# nmcli connection show NAME UUID TYPE DEVICE Wired connection 1 0c9745ec-fe49-3138-ba7a-237ae4e07699 ethernet enp0s3 NAME 就是联机代号,通常与后面的网卡DEVICE一样; UUID 这个是特殊的装置识别,保留就好不要理他; TYPE 就是网卡的类型,通常就是以太网卡; DEVICE 当然就是网卡名称上面可以看到有个eth0的联机代号,查察这个联机代号的设置:
[root@study ~]# nmcli connection show eth0 connection.id: eth0 connection.uuid: 505a7445-2aac-45c8-92df-dc10317cec22 connection.interface-name: eth0 connection.type: 802-3-ethernet connection.autoconnect: yes .....(中间省略)..... ipv4.method: manual ipv4.dns: ipv4.dns-search: ipv4.addresses: 192.168.1.100/24 ipv4.gateway: -- .....(中间省略)..... IP4.ADDRESS[1]: 192.168.1.100/24 IP4.GATEWAY: IP6.ADDRESS[1]: fe80::5054:ff:fedf:e174/64 IP6.GATEWAY:最底下大写的IP4, IP6 指的是目前的实际使用的网络参数,最上面connection开头的部份则指的是联机的状态! 比较重要的参数如下:
connection.autoconnect [yes|no] :是否于开机时启动这个联机,预设通常是 yes 才对!根据上面的设置项目,我们来设置网络参数:
ipv4.method [auto|manual] :自动还是手动设置网络参数的意思
ipv4.dns [dns_server_ip] :就是填写 DNS 的 IP 地址~
ipv4.addresses [IP/Netmask] :就是 IP 与 netmask 的集合,中间用斜线 / 来隔开~
ipv4.gateway [gw_ip] :就是 gateway 的 IP 地址!
[root@study ~]# nmcli connection modify eth0 \ > connection.autoconnect yes \ > ipv4.method manual \ > ipv4.addresses 172.16.1.1/16 \ > ipv4.gateway 172.16.200.254 \ > ipv4.dns 172.16.200.254上面只是修改了配置文件,要生效还得启动(up)eth0 联机接口:
[root@study ~]# nmcli connection up eth0 [root@study ~]# nmcli connection show eth0 .....(前面省略)..... IP4.ADDRESS[1]: 172.16.1.1/16 IP4.GATEWAY: 172.16.200.254 IP4.DNS[1]: 172.16.200.254 IP6.ADDRESS[1]: fe80::5054:ff:fedf:e174/64 IP6.GATEWAY:最后执行nmcli connection show eth0,确认是否设置正确!
自动取得IP参数
回到顶部
如果网络是由DHCP协议自动分配取得的,只需要将ipv4.method那个项目填成auto即可!
[root@study ~]# nmcli connection modify eth0 \ > connection.autoconnect yes \ > ipv4.method auto [root@study ~]# nmcli connection up eth0 [root@study ~]# nmcli connection show eth0 IP4.ADDRESS[1]: 172.16.2.76/16 IP4.ADDRESS[2]: 172.16.1.1/16 IP4.GATEWAY: 172.16.200.254 IP4.DNS[1]: 172.16.200.254自动取得IP要简单得多!另外,上面connection...,ipv4... 等参数也可以使用 [tab] 呼叫出来!nmcli支持bash-complete的功能,指令执行也很方便的!
显示和修改主机名
回到顶部
主机名记录在/etc/hostname文件中,可以直接将主机名写入该文件。
hostname命令可以显示主机名,也可以使用hostnamectl命令显示和修改主机名,hostnamectl命令常用格式如下所示:
[root@study ~]# hostnamectl [set-hostname 主机名]显示主机名与相关信息:
[root@study ~]# hostnamectl Static hostname: peter-initroot Icon name: computer-vm Chassis: vm Machine ID: 82929df7ee394b73b81252fe3b4e5020 Boot ID: 3bbb6c089a7c486baadc048bd40b0ad5 Virtualization: oracle Operating System: Linux Mint 19.1 Kernel: Linux 4.15.0-65-generic Architecture: x86-64hostnamectl命令除了可以显示主机名外,也可以显示系统的相关信息,包括操作系统版本,内核版本,cpu处理器架构,机器ID等。 而hostname命令只是简单的显示主机名:
[root@study ~]# hostname peter-initroot将主机名修改为www.initroot.com:
[root@study ~]# hostnamectl set-hostname www.initroot.com [root@study ~]# cat /etc/hostname www.initroot.com再修改回去:
[root@study ~]# hostnamectl set-hostname peter-initroot
本文由initroot编辑整理,转载请注明www.initroot.com