天天看點

網絡基本配置

                                    網絡基本配置

-----------------------------------------------------------------------------------------------------------------------------------------------

DHCP:動态主機配置協定,自動擷取ip服務

網絡基本配置

基本網絡配置

<1>将Linux主機接入到網絡,需要配置網絡相關設定。

<2>一般包括如下内容:

  主機名,便于管理,隻在本機上有意義,但不具有網絡功能

  IP/netmask

  路由:預設網關

  DNS伺服器

  主DNS伺服器

  次DNS伺服器

  第三DNS伺服器

主機名:

centos 6:臨時改主機名 hostname,永久改/etc/sysconfig/network,改完後再臨時改一下即可,然後改./etc/hosts,添加自己新的主機名

centos7裡hostnamectl :hostname管理工具

IP/netmassk:

CentOS 6:

網卡命名:eth0 、eth1、eth2……

lo網卡:loopback網卡,回環網卡,隻要裝置安裝tcp/ip協定,就肯定有lo網卡,127.0.0.1

dmesg | grep eth 可以檢視網卡名,圖中所示e1000

網絡基本配置

或者ethtool -i eth0

網絡基本配置

修改網卡名以及網卡與mac對應關系:/etc/udev/rules.d/70-persistent-net.rules,之後輸入modprobe -r e1000解除安裝網卡驅動,再加載網卡驅動modprobe e1000(e1000為網卡驅動名),網卡名可更改

網絡配置方式

靜态指定:

  ifconfig, route, netstat

  ip: object {link, addr, route}, ss, tc

  system-config-network-tui,setup

  配置檔案

動态配置設定:

  DHCP: Dynamic Host Configuration Protocol

ifconfig指令:顯示已經啟用的網卡資訊

ifconfig eth0 up   啟用網卡

ifconfig eth0 down 禁用eth0網卡

ifconfig -a 顯示所有網卡,被禁用的網卡不顯示ip資訊

ip a 指令可以看網卡資訊,up是啟用,down是禁用

網絡基本配置

ifdown eth0,禁用網卡,此指令依賴于配置檔案,如果網卡配置檔案裡沒有資訊,将無作用

ifconfig[interface]

ifconfig eth1 172.20.0.123 臨時更改

ifconfig 網卡名 IP/netmask

tcpdump -i 網卡名 icmp :對網卡抓icmp包

ifconfig eth0:1 192.168.1.1/24 對eth0起别名,ifconfig後eth0處顯示eth0:1

注意:立即生效

啟用混雜模式:[-]promisc

網卡配置檔案目錄:/etc/sysconfig/network-scripts

該目錄下ifcfg-eth0:更改網卡資訊的檔案,更改後service NetworkManager restart重新開機服務激活,沒有作用就ifconfig 網卡 down後再ifconfig 網卡 up可激活

網絡基本配置

route -n 檢視路由記錄

route add -host x.x.x.x dev eth0 增加路有記錄,加的是一個裝置ip,單機路由

route del ……                 删除路由記錄

route add net x.x.x.x dev eth0 增加路由記錄,加的是一個網段,網絡路由

實際應用中實體網段和邏輯網段都在同一個網段中

/proc/sys/net/ipv4/ip_foward 将計算機啟用路由功能

兩個路由器分成3個網段,實作了多路由跨網段通訊

1.網絡

A:172.20.0.6/16  gw 172.20.0.200

R1:172.20.0.200/16  gw10.0.0.1/8

R2:10.0.0.2/8 gw 192.168.32.200/24

B:192.168.32.7/24 gw 192.168.32.200

2.啟動兩個路由器,echo 1>/proc/sys/net/ipv4/ip_foward

R1 route add -net B的ip gw 10.0.0.2

R2 route add -net A的(ip末尾為0) gw 10.0.0.1

實驗中路由器是僅主機模式

網關的作用就是為了添加預設路由

邊界路由器可以加預設網關0.0.0.0

一個網卡綁兩個ip:圖形界面可以直接添加,或者/etc/sysconfig/network-scripts/ifcfg-eth0裡添加ip;

第二種:service NetworkManager stop,然後cp ifcfg-eth0 ifcfg-eth0:1,繼續修改/etc/sysconfig/network-scripts/ifcfg-eth0,最後service NetworkManager restart

配置動态路由

路由協定:路由間互相交換各自的路由記錄資訊以達到整個網絡路由器通訊

配置檔案中:

動态配置

DEVICE=ethx

HWADDR=xx:xx:xx:xx:xx:xx,此行最好不要添加,防止更換網卡後系統無法識别新網卡

BOOTPROTO=dhcp

ONBOOT=yes 此行預設yes

靜态配置

IPADDR=x.x.x.x

PREFIX=x 或者NETMASK=x.x.x.x

GATEWAY=x.x.x.x

DNS1=x.x.x.x

DNS2=x.x.x.x

ONBOOT=yes

通過守護程序擷取動态路由

 安裝quagga包

 支援多種路由協定:RIP、OSPF和BGP

 指令vtysh配置

netstat -tn 顯示本機通過tcp協定和哪些裝置在連接配接

netstat -tnl 顯示本機和哪些裝置有監聽狀态

netstat -tnla 顯示本機通過tcp協定和哪些裝置在連接配接和監聽

-t: tcp協定相關

-u: udp協定相關

-w: raw socket相關

-l: 處于監聽狀态

-a: 所有狀态

-n: 以數字顯示IP和端口

-e:擴充格式

-p: 顯示相關程序及PID

netstat -I網卡号 指定網卡,和ifconfig -s 網卡号一樣

netstat指令逐漸被ss代替

ss -l 顯示本地打開的所有端口

ss -pl顯示每個程序具體打開的socket

ss -t -a 顯示所有tcpsocket

ss -u -a 顯示所有的UDP Socekt

ss -o state established '( dport= :sshor sport = :ssh)' 顯示所有已建立的ssh連接配接

ss -o state established '( dport= :http or sport = :http )' 顯示所有已建立的HTTP連接配接

ss -s 列出目前socket詳細資訊

ip指令

檢視、修改路由表

ip addr

ip a a 添加位址

ip addr add 1.1.1.1/24 dev eth1給eth1增加ip

ip addr add 1.1.1.1/24 dev eth1 label eth:1 給網卡設别名

ip addr del 1.1.1.1/24 dev eth1,删除位址

ip addr flush eth1 删除網卡全部額外的ip位址

ip addr下global和link差別,假設我一個網卡上有兩個ip,global狀态下ping該網卡随便一個ip都會通,link狀态下隻能是網口号對應ip上才能通

ip route add 2.2.2.0/24 via 網關ip 增加路由表

ip route delete ……

ip route flush dev eth1 清空路由表

網絡配置檔案/etc/sysconfig/network-scripts/ipcfg-eth0,ifcfg-eth0:2,類似這種帶冒号的隻能手動添加,無法自動擷取ip

ONBOOT:在系統引導時是否激活此裝置

TYPE:接口類型;常見有的Ethernet, Bridge

UUID:裝置的惟一辨別

IPADDR:指明IP位址

NETMASK:子網路遮罩

GATEWAY: 預設網關

DNS1:第一個DNS伺服器指向

DNS2:第二個DNS伺服器指向,改完dns之後service network restart,/etc/resolv.conf有dns位址說明配置成功

USERCTL:普通使用者是否可控制此裝置

PEERDNS:如果BOOTPROTO的值為“dhcp”,是否允許dhcp server配置設定的dns伺服器指向資訊直接覆寫至/etc/resolv.conf檔案中

DOMAIN:自動補域名,ping www

Bonding:多網卡綁定一個ip

Bonding工作模式

Mode 0 輪流模式

Mode 1 主備模式

Mode 3 廣播模式,兩個網卡走一模一樣的資料

active-backup、balance-tlb和balance-alb模式不需要交換機的任何特殊配置。其他綁定模式需要配置交換機以便整合連結。如:Cisco 交換機需要在模式0、2 和3 中使用EtherChannel,但在模式4中需要LACP和EtherChannel

實作Mode 0模式:

Bonding

多塊網卡綁定到一個ip

建立bonding配置檔案,/etc/sysconfig/network-scripts/ifcfg-bond0

内容格式

DEVICE=bond0

BOOTPROTO=none

PREFIX=x.x.x.x

BONDING_OPTS=  “miimon=100 mode=x” miimon表示多少毫秒後探測網卡是否還在工作

再在需要設定bonding的網卡檔案ifcfg-ethx改其配置

MASTER=bond0

SLAVE=yes

USERCTL=no 普通使用者是否可以控制該網卡

檢視bond0狀态/proc/net/bonding/bond0

實驗網卡是僅主機模式

使用傳統命名方式:

(1) 編輯/etc/default/grub配置檔案

   GRUB_CMDLINE_LINUX="rhgbquiet net.ifnames=0"

   或:修改/boot/grub2/grub.cfg

(2) 為grub2生成其配置檔案

   grub2-mkconfig -o /etc/grub2.cfg

(3) 重新開機系統

bonding删除

ifconfig bond0 down

rmmod bonding

centos7網絡配置

采用傳統命名方式,便于統一管理

(1)編輯/etc/default/grub配置檔案

找到GRUB_CMDLINE_LINUX=”rhgb quiet net”這一行加上.ifnames=0

或者修改/boot/grub2/grub.cfg,找到第一個linux16那一行加上.ifnames=0

(2)為grub2生成其配置檔案

grub2-mkconfig -o /etc/grub2.cfg

(3)重新開機系統

圖形配置:nm-connection-editor

字元配置tui工具:nmtui

指令行工具:nmcli

nmcli connection指令有個name名和device名,name名表示連接配接名,一個name名對應/network-scripts/下一個ifcfg-網卡号檔案,是以可以用指令來切換網絡環境

nmcli connection add con-name eth0-aa ifname eth0 type ethernet ipv4.method manual ipv4.address .../...

                          增加 自定義名字  名字    針對eth0設定   以太網類型     設定ip為手動指定     設定ipv4位址

不設定ipv4.method manual 會造成ip将自動擷取,本條指令執行便無效果

nmcli dev disconnect eth0斷開eth0網卡連接配接

nmcli dev connect eth0啟用eth0網卡連接配接

設定好nmcli檔案後,使用指令nmcli connection up eth0-aa可以切換剛配置的eth-aa 的網絡環境

nmcli connection modify eth0-aa con-name eth0-bb

将eth0-aa的配置環境改名為eth0-bb

nmcli connection delete eth0 删除網卡eth0網絡環境檔案

nmcli connection modify eth0-aa +ipv4.addresses 2.2.2.2/24 給eth0-aa增加位址

nmcli connection modify eth0-aa -ipv4.addresses 2.2.2.2/24 給eth0-aa删減位址

添加bond1指令

nmcli con add type bond con-name mybond ifname mybond mode 1

配置網卡從屬bond

nmcli con add type bond-slave ifname eth0 master mybond

啟動bond

nmcli con up bond-slave-eth0

啟動綁定

nmcli con up mybond

網絡組team

網絡組:将多個網卡聚合在一起,進而實作冗錯和提高吞吐量

網絡組不同于舊版中bonding技術,提供了更好的性能和擴充性

網絡組由核心驅動和teamd守護程序實作

多種方式 runner方式

 broadcast

 roundrobin

 activebackup

 loadbalance

nmcli con add type team con-name CNAME ifname INAME [config JSON]

CNAME連接配接名

INAME網絡接口名

TEAM網絡組接口

JSON指定runner方式

格式:’{“runner”. {“name”: ”method”}}’

method可以是broadcast、roundrobin、activebackup、loadbalance

建立接口

nmcli con add type team-slave con-name CNAME ifname INAME master TEAM

   CNAME連接配接名

   INAME網絡接口名

   TEAM網絡組接口

多次建立接口後啟用接口

   nmcli con up CNAME

啟用team需要啟用team一次,分别啟用各網卡一次

斷開連接配接

nmcli dev dis INAME

網絡組删除

nmcli connection down team0

teamdctl team0 state

nmcli connection show

nmcli connectioni delete team0-eth0

nmcli connectioni delete team0-eth1 有幾個網卡綁定team就删除幾個

網絡用戶端工具

ftp,lftp:子指令:get、mget、ls、help

ftp工具,指令行式連接配接ftp需要填寫使用者名,預設ftp或者anonymous

網絡基本配置

ftp進入後會有界面

網絡基本配置

ls:檢視ftp檔案清單

!ls:檢視客戶機檔案清單

lcd:檢視用戶端目前目錄位置

get 檔案名:下載下傳該檔案

put 檔案名:上傳該檔案

mget 檔案名1 檔案名2 …:下載下傳檔案1、檔案2…

mput 檔案名1 檔案名2 …:上傳檔案1、檔案2…

ftp不支援補全

lftp工具,ftp更新版,預設ftp登入,增添顔色,支援linux的tab補全,

lftp[-p port] [-u user[,password]] SERVER

lftpgetURL

lftpget ftp://...... 從ftp下載下傳檔案

wget不僅支援ftp協定,還支援http協定

wget[option]... [URL]...

  -q: 靜默模式

  -c: 斷點續傳

  -P:儲存在指定目錄

  -O: 儲存為指定的檔案名 wget http://... -o /app/file,從網站下載下傳檔案儲存為/app下file

  --limit-rate=: 指定傳輸速率,機關K,M等

links URL,純字元界面浏覽器

  --dump,links URL --dump提取純文字

  --source,直接看源代碼

繼續閱讀