2018-11-19 Ubuntu linuxネットワーク設定エラー

6436 ワード

ネットワーク関連の一般的なコマンド-Ubuntu 16.04以降のバージョンに基づく
ifconfig   —       

lspci | grep -I eth  —       

Ethtool   —        

sudo ip link ls   —      

sudo ip link set  up  —    

iptables -L -nv   —       

service iptables status  —       

Iptables -F  —     

ufw status  —ufw     

ufw disable —     

/etc/init.d/networking restart  —    

service networking restart   —    

      : /etc/network/interfaces

DNS    : /etc/resolv.conf     /etc/resolvconf/resolv.conf.d/head   

ufw       : /etc/ufw/before.rules 

ネットワークPingが通じない場合は、ハードウェアからソフトウェアまで順にチェックします.
1、ifconfgを使用すると、現在のカード構成、物理ネットワークカード、仮想ネットワークカードなどの情報を見ることができます.
2、lspci|grep-Iethを使って、以下のように、私のサーバーは6枚のネットカードがあって、4枚のGEと2枚の10 Gがあります
root@hs01:~#  lspci | grep -i eth

02:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe

02:00.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe

03:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe

03:00.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5720 Gigabit Ethernet PCIe

05:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM57810 10 Gigabit Ethernet (rev 10)

05:00.1 Ethernet controller: Broadcom Corporation NetXtreme II BCM57810 10 Gigabit Ethernet (rev 10)

ehtoolコマンドを使用して、NICの詳細を表示します.
root@hs01:~# ethtool eno1

Settings for eno1:

    Supported ports: [ TP ]

    Supported link modes:   10baseT/Half 10baseT/Full

                            100baseT/Half 100baseT/Full

                            1000baseT/Half 1000baseT/Full

    Supported pause frame use: No

    Supports auto-negotiation: Yes

    Advertised link modes:  10baseT/Half 10baseT/Full

                            100baseT/Half 100baseT/Full

                            1000baseT/Half 1000baseT/Full

    Advertised pause frame use: Symmetric

    Advertised auto-negotiation: Yes

    Link partner advertised link modes:  10baseT/Half 10baseT/Full

                                         100baseT/Half 100baseT/Full

                                         1000baseT/Half 1000baseT/Full

    Link partner advertised pause frame use: No

    Link partner advertised auto-negotiation: Yes

    Speed: 1000Mb/s

    Duplex: Full

    Port: Twisted Pair

    PHYAD: 1

    Transceiver: internal

    Auto-negotiation: on

    MDI-X: on

    Supports Wake-on: g

    Wake-on: d

    Current message level: 0x000000ff (255)

                   drv probe link timer ifdown ifup rx_err tx_err

    Link detected: yes

root@hs01:~#

3、NICがupしているかどうかをチェックします(ここで私のNICはeno 1で、あなたの可能性はeth 0、eth 1、その他)
root@hs01:~# sudo ip link ls eno1
2: eno1:  mtu 1500 qdisc mq state **UP** mode DEFAULT group default qlen 1000
    link/ether d0:94:66:1e:e4:84 brd ff:ff:ff:ff:ff:ff

表示状態が「DOWN」の場合は、
sudo ip link set eno 0 upコマンドで起動
4、NICプロファイルを確認する
IPアドレス、ゲートウェイ、DNSといったプロファイルでは、各データが正しいかどうか、サブネットマスク、ゲートウェイなどをチェックします.
次の例では、プライマリ・インタフェースとサブインタフェース・アドレスを構成します.
root@hs01:~# vim /etc/network/interfaces

# This file describes the network interfaces available on your system

# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface

auto lo

iface lo inet loopback

# The primary network interface

auto br0 br0:1

iface br0 inet **static**

        address 192.168.1.42

        netmask 255.255.255.252

        network 192.168.1.40

        broadcast 192.168.1.43

        gateway 192.168.1.41

        # dns-* options are implemented by the resolvconf package, if installed

        dns-nameservers 8.8.8.8

#       dns-search thn.lon

        bridge_ports enp5s0f0

        bridge_stp off

        bridge_fd 0

        bridge_maxwait 0

iface br0:1 inet static

        address 192.168.1.65

        network 192.168.1.64

        netmask 192.168.1.240

ここは静的IPアドレスを配置して、配置が終わった後にネットワークを再起動して、Pingは自分のアドレスが通じるかどうかを見て、更にPingゲートウェイは通じるかどうかを検査します.
DHCPが構成されている場合は、ifconfigでIPアドレスが取得されているかどうかを確認し、取得されていない場合はルーティングやリンクの問題、ICMPでpingが禁止されている可能性があります.DHCPサーバーがPing通でアドレスが取得できない場合は、DHCPサーバー管理者に連絡するか、ゲートウェイを探してルータDHCP relayの構成を調べる必要があります.
これはできれば、ゲートウェイを探してテストした静的アドレスを探して、静的アドレスが通じるかどうかを見て、DHCPサーバーの問題を排除して位置決めします.
5、次のステップで、Pingゲートウェイを通って通じることができて、PingはDNSサーバーのアドレスが通じないならば、pingはネット内の他の機械のアドレスを見て、排除法でDNSサーバー自身の問題があるかどうかを確認します.ルーティングのペアをtracerouteまたはmtr−nで見ることもできます.
IPアドレスが間違っていなければ、Pingゲートウェイも通じるし、ping DNSサーバも通じるし、解析しないなら、DNSサービスプロファイルを表示します.
まずdnsサーバの構成情報を見てください.次は私のマシンの正常な出力です.
root@hs01:~# nslookup 8.8.8.8

Server:        8.8.8.8

Address:    8.8.8.8#53

Non-authoritative answer:

8.8.8.8.in-addr.arpa    name = [google-public-dns-a.google.com](http://google-public-dns-a.google.com).

Authoritative answers can be found from:

root@hs01:~#

プロファイルの確認
root@hs01:~# cat /etc/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)

#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

nameserver 8.8.8.8

root@hs01:~#

nameserver構成がなければ、なければ補足します
Vim/etc/resolv.conf
ネットワークを再起動します.しかし、変更後にネットワークを再起動すると、このファイルにさっき書き込まれたDNSサーバのアドレスがなくなったことに気づき、/etc/resolvconf/resolvを変更します.conf.d/head、nameserver x.x.x.x.x文を増やして、ネットワークを再起動すれば、普通はいいです.
6、外部ネットワークPingは自分で通じなくて、ファイアウォールの配置を検査して、ファイアウォールのコマンドを検査してsudoコマンドあるいはrootユーザーを使う
iptables-Lは既存のファイアウォールポリシーを表示し、ICMPが許可されているかどうかを確認し、iptables-Fがファイアウォールを閉じて再試行できます.
iptablesが有効ではなくufwが使用されている場合は、ufw statusを使用してステータスを表示し、ufwを閉じてsudo ufw disableコマンドを使用します.
root@hs01:~# ufw status

Status: active

To                         Action      From

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

443                        ALLOW       Anywhere

22                         ALLOW       Anywhere

5901                       ALLOW       Anywhere

443 (v6)                   ALLOW       Anywhere (v6)

22 (v6)                    ALLOW       Anywhere (v6)

5901 (v6)                  ALLOW       Anywhere (v6)

ufwルールファイルの編集
sudo vim /etc/ufw/before.rules

-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT      Ping

-A ufw-before-input -p icmp --icmp-type echo-request -j DROP           ping