網路管理基礎

来源:https://www.cnblogs.com/thelovelybugfly/archive/2019/12/17/12055043.html
-Advertisement-
Play Games

網路管理基礎 Network interface names Traditionally, network interfaces in Linux are enumerated as eth0, eth1, eth2, and so on. However, the mechanism which ...


網路管理基礎

Network interface names

Traditionally, network interfaces in Linux are enumerated as eth0, eth1, eth2, and so on. However, the mechanism which
sets these names can cause changes to which interface gets which name as devices are added and removed.
The default naming behavior in Red Hat Enterprise Linux 7 is to assign fixed names based on firmware, device topology,
and device type.

Interface names have the following characters:
Ethernet interfaces begin with en, WLAN interfaces begin with wl, and WWAN interfaces begin with ww.
The next character(s) represents the type of adapter with an o for on-board, s for hotplug slot, and p for PCI geographic location.
Not used by default but also available to administrators, an x is used to incorporate a MAC address.
Finally, a number N is used to represent an index, ID, or port.
If the fixed name cannot be determined, the traditional names such as ethN will be used.

For example, the first embedded network interface may be named eno1 and a PCI card network interface may be named enp2s0.
The new names make it easier to distinguish the relationship between a port and its name if the user knows both, but the
trade off is that users cannot assume a system with one interface calls that interface eth0.

使用NetworkManager管理網路

網路管理器(NetworkManager)是一個動態網路的控制器與配置系統,它用於當網路設備可用時保持設備和連接開啟並激活
預設情況下,CentOS/RHEL 7 已安裝網路管理器,並處於啟用狀態。

device 設備,物理設備 例如enp2s0,virbr0,team0
connection 連接,邏輯設置 指的是一套具體配置方案
多個connection可以應用到同一個device,但同一時間只能啟用其中一個connection。
這樣的好處是針對一個網路介面,可以設置多個網路連接,比如靜態IP和動態IP,再根據需要up相應的connection

NetworkManager提供的工具
nmcli, nmtui, nm-connect-editor

1. 方法一: 修改ip/netmask/dns/gateway[瞭解]
[root@CentOS7 ~]# nmcli connection add con-name enp2s0-auto autoconnect yes ifname enp2s0 type ethernet
[root@CentOS7 ~]# nmcli connection add con-name enp2s0-gun autoconnect yes ifname enp2s0 type ethernet ip4 10.10.10.10/24 gw4 10.10.10.254
[root@CentOS7 ~]# nmcli connection show enp2s0-auto |grep ipv4.me
ipv4.method: auto
[root@CentOS7 ~]# nmcli connection show enp2s0-gun |grep ipv4.me
ipv4.method: manual
[root@CentOS7 ~]# ls /etc/sysconfig/network-scripts/
ifcfg-enp2s0 ifdown-ippp ifdown-TeamPort ifup-ipv6 ifup-Team
ifcfg-enp2s0-auto ifdown-ipv6 ifdown-tunnel ifup-isdn ifup-TeamPort
ifcfg-enp2s0-gun ifdown-isdn ifup ifup-plip ifup-tunnel
[root@CentOS7 ~]# nmcli connection up enp2s0-auto
[root@CentOS7 ~]# nmcli connection delete enp2s0-auto
[root@CentOS7 ~]# nmcli connection modify enp2s0-gun ipv4.method a
[root@CentOS7 ~]# nmcli connection modify enp2s0-gun ipv4.method m
[root@CentOS7 ~]# nmcli connection modify enp2s0-gun +ipv4.addresses 20.20.20.20/24
[root@CentOS7 ~]# nmcli connection modify enp2s0-gun +ipv4.dns 114.114.114.114
[root@CentOS7 ~]# nmcli connection show enp2s0-gun |grep ipv4.add
ipv4.addresses: 10.10.10.10/24, 20.20.20.20/24

2. 方法二:修改ip/netmask/dns/gateway
[root@CentOS7 ~]# vim /etc/sysconfig/network-scripts/ifcfg-enp2s0
NAME="enp2s0"
DEVICE="enp2s0"
ONBOOT=yes
NETBOOT=yes
BOOTPROTO=none
IPADDR=172.16.120.246
PREFIX=24
IPADDR1=192.168.200.246
PREFIX1=24
GATEWAY=172.16.120.254
DNS1=8.8.8.8
DNS2=114.114.114.114
[root@CentOS7 ~]# nmcli con reload
[root@CentOS7 ~]# nmcli con down enp2s0; nmcli con up enp2s0

註:刪除自建的連接connection

不使用NetworkManager管理網路

aliyun
[root@aliyun ~]# nmcli connection delete enp2s0-auto
[root@aliyun ~]# systemctl disable NetworkManager
[root@aliyun ~]# systemctl stop NetworkManager
[root@aliyun ~]# systemctl status NetworkManager
● NetworkManager.service - Network Manager
Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; disabled; vendor preset: enabled)
Active: inactive (dead)

[root@aliyun ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
NAME=eth0
DEVICE=eth0
ONBOOT=yes
NETBOOT=yes
BOOTPROTO=none
IPADDR=192.168.122.169
PREFIX=24
TYPE=Ethernet
[root@aliyun ~]# systemctl restart network.service


以下配置跟NetworkManager無關:
1. 修改主機名/etc/hostname
# hostnamectl set-hostname CentOS7.example.com
# cat /etc/hostname
# reboot

2. 配置名字解析Configuring name resolution
a. hosts
[root@CentOS7 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
119.75.218.70 www.baidu.com
[root@CentOS7 ~]# getent hosts www.baidu.com
119.75.218.70 www.baidu.com

b. resolv.conf DNS
[root@CentOS7 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 114.114.114.114
[root@CentOS7 ~]# yum -y install bind-utils
[root@CentOS7 ~]# host www.sina.com
www.sina.com is an alias for us.sina.com.cn.
us.sina.com.cn is an alias for wwwus.sina.com.
wwwus.sina.com has address 66.102.251.33

基本的網路測試工具

[root@CentOS7 ~]# ip a
[root@CentOS7 ~]# ip a s eth0
[root@CentOS7 ~]# ip route
[root@CentOS7 ~]# ip neigh
[root@CentOS7 ~]# hostname
[root@CentOS7 ~]# ping www.baidu.com
[root@CentOS7 ~]# ping -c2 www.baidu.com
[root@CentOS7 ~]# ip -s link show eth0
[root@CentOS7 ~]# traceroute www.sina.com
[root@CentOS7 ~]# tracepath www.sina.com
1?: [LOCALHOST] pmtu 1500
1: no reply
2: 11.245.87.126 0.787ms
3: 106.11.130.218 0.387ms
4: 42.120.244.125 0.425ms
5: 150.138.132.157 1.469ms
6: 150.138.128.241 3.546ms asymm 7
7: 202.97.40.241 24.677ms
8: 202.97.24.154 14.197ms
9: 202.97.33.154 18.340ms asymm 10
10: 202.97.90.242 182.632ms
11: 203.14.186.138 193.383ms asymm 13
12: 218.30.41.234 209.543ms asymm 13
13: 66.102.251.33 163.224ms reached
Resume: pmtu 1500 hops 13 back 14

查看設備物理連接的狀態
[root@CentOS7 ~]# ip a
2: enp1s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast master br0 state DOWN qlen 1000
如果在連接禁用 onboot=no 以上的信息不真實

[root@CentOS7 ~]# ethtool enp1s0
Link detected: no

ports and services

以下為示例服務:
[root@aliyun ~]# yum -y install httpd vsftpd
[root@aliyun ~]# systemctl start httpd
[root@aliyun ~]# systemctl start vsftpd

http 80/tcp
https 443/tcp
ssh 22/tcp
ftp 21/tcp

1. Show TCP sockets (LISTEN)
[root@aliyun ~]# ss -tnl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:80 *:*
LISTEN 0 128 *:8080 *:*
LISTEN 0 10 114.215.71.214:53 *:*
LISTEN 0 10 10.29.89.165:53 *:*
LISTEN 0 10 127.0.0.1:53 *:*
LISTEN 0 128 *:22 *:*
LISTEN 0 128 127.0.0.1:953 *:*
LISTEN 0 128 127.0.0.1:6010 *:*
LISTEN 0 128 *:443 *:*
LISTEN 0 32 :::21 :::*
LISTEN 0 10 :::53 :::*

[root@aliyun ~]# ss -tnl |grep :80
LISTEN 0 128 *:80 *:*
[root@aliyun ~]# ss -tnl |grep :21
LISTEN 0 32 :::21 :::*

[root@aliyun ~]# ss -atn
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:80 *:*
LISTEN 0 10 114.215.71.214:53 *:*
LISTEN 0 10 10.29.89.165:53 *:*
LISTEN 0 10 127.0.0.1:53 *:*
LISTEN 0 128 *:22 *:*
LISTEN 0 128 127.0.0.1:953 *:*
LISTEN 0 128 127.0.0.1:6010 *:*
ESTAB 0 52 114.215.71.214:22 123.120.38.233:49603
ESTAB 0 0 114.215.71.214:40962 140.205.140.205:80
LISTEN 0 32 :::21 :::*
LISTEN 0 10 :::53 :::*

[root@aliyun ~]# ss -atn |grep :22
LISTEN 0 128 *:22 *:*
ESTAB 0 52 114.215.71.214:22 123.120.38.233:49603

[root@aliyun ~]# ss -atn |grep :80
LISTEN 0 128 *:80 *:*
ESTAB 0 0 114.215.71.214:40962 140.205.140.205:80

a 所有狀態,包括 l LISTEN

2. Show UDP sockets (所有狀態)
[alice@CentOS7 ~]$ ss -anu
State Recv-Q Send-Q Local Address:Port Peer Address:Port
UNCONN 0 0 114.215.71.214:53 *:*
UNCONN 0 0 10.29.89.165:53 *:*
UNCONN 0 0 127.0.0.1:53 *:*
UNCONN 0 0 114.215.71.214:123 *:*
UNCONN 0 0 10.29.89.165:123 *:*
UNCONN 0 0 127.0.0.1:123 *:*
UNCONN 0 0 *:123 *:*
UNCONN 0 0 :::53 :::*
UNCONN 0 0 :::123 :::*

[kiosk@foundation0 ~]$ ss -tan |grep :5910
LISTEN 0 5 *:5910 *:*
ESTAB 0 0 172.25.254.250:5910 172.25.254.44:51435
ESTAB 0 0 172.25.254.250:5910 172.25.254.6:40546
ESTAB 0 0 172.25.254.250:5910 172.25.254.18:37780
ESTAB 0 0 172.25.254.250:5910 172.25.254.13:55841
ESTAB 0 0 172.25.254.250:5910 172.25.254.35:36984
ESTAB 0 0 172.25.254.250:5910 172.25.254.9:47342
ESTAB 0 0 172.25.254.250:5910 172.25.254.2:40955
ESTAB 0 0 172.25.254.250:5910 172.25.254.12:50833
ESTAB 0 0 172.25.254.250:5910 172.25.254.36:50854
ESTAB 0 0 172.25.254.250:5910 172.25.254.1:52444
ESTAB 0 0 172.25.254.250:5910 172.25.254.47:39335
ESTAB 10 0 172.25.254.250:5910 172.25.254.14:55833

CentOS7修改網卡為eth0

1. 修改網卡配置文件
# mv ifcfg-eno16777728 ifcfg-eth0  
# vim ifcfg-eth0  
NAME=eth0  

2. GRUB添加kernel參數
# vim /etc/sysconfig/grub
GRUB_CMDLINE_LINUX="...... net.ifnames=0"
# grub2-mkconfig -o /boot/grub2/grub.cfg

3. reboot
# reboot

在KVM虛擬機添加全虛擬化的網卡

也可在安裝系統時添加kernel參數 net.ifnames=0

KVM安裝Centos7:

臨時配置網路信息

ip/netmask
# ip addr add dev eth1 3.3.3.3/24
# ip addr del dev eth1 3.3.3.3/24

gateway
# ip route del default
# ip route add default via 192.168.122.3
# ip route add 10.10.10.0/24 via 192.168.122.5

hostname
# hostname CentOS7.cc.com



您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 通過 loganalyzer 展示資料庫中的日誌 [toc] 環境準備 三台主機 一臺日誌伺服器,利用上一個案例實現,IP:192.168.39.7, 一臺資料庫伺服器,利用上一個案例實現,IP:192.168.39.27, 一臺當httpd+php 伺服器,並安裝loganalyzer展示web圖 ...
  • 賬戶安全是系統安全的第一道防線,通過刪除不必要的用戶以及對登錄進行加密與限制,可以避免因許可權泄露與中間人攻擊導致的安全隱患。 刪除不必要的用戶 在linux系統安裝過程中,系統會建立一些不必要的用戶與用戶組,這些用戶與用戶組會成為黑客攻擊的目標,刪除它們可以有利於系統的安全。 Linux中可以刪除的 ...
  • 最近使用 etcd的過程中,發現etcd又占用了新的埠,並且文檔中指向了這個網站,下麵針對此網站來進行記錄: https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.txt 保持更 ...
  • 許可權: 所謂的許可權是,由用戶啟動的進程,或者由操作系統啟動的進程,可以訪問哪些文件,不可以訪問哪些文件。 進程太多了,不可能為每個進程定義許可權對吧,所以進程的許可權來自於啟動進程的用戶。 用戶有哪些許可權,則由此用戶啟動的進程就有哪些許可權。 操作系統啟動後,會啟動很多後臺進程(daemon進程),這些進 ...
  • 和其他語言一樣,Shell 也可以包含外部腳本(類似python中import的功能)。這樣可以很方便的封裝一些公用的代碼作為一個獨立的文件。 Shell 文件包含的語法格式如下: 示例 創建兩個 shell 腳本文件。 test_01.sh 代碼如下: test_02.sh 代碼如下: 給test ...
  • 重定向的作用是將命令的執行結果輸出到指定的文件中。 重定向命令列表如下: 文件描述符 0 通常是標準輸入(STDIN),1 是標準輸出(STDOUT),2 是標準錯誤輸出(STDERR)。 1、輸出重定向 將輸出重定向到file示例: 註意,任何file1內的已經存在的內容將被新內容替代,更改fil ...
  • 最近發現windows 預設是沒有xps 查看器的,需要自己手動添加: 安裝完成後,即可使用: 參考鏈接:https://www.windowscentral.com/how-get-xps-viewer-app-back-windows-10-april-2018-update ...
  • pidstat主要用於監控全部或指定進程占用系統資源的情況,如CPU,記憶體、設備IO、任務切換、線程等。pidstat首次運行時顯示自系統啟動開始的各項統計信息,之後運行pidstat將顯示自上次運行該命令以後的統計信息。用戶可以通過指定統計的次數和時間來獲得所需的統計信息。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...