Hogyan találom meg a belső IP címemet?

162

Telepítettem az Ubuntu 12.04 kiszolgálót, ezért nincs grafikus felhasználói felületem. Ha az ifconfig parancsot használom, nem találom az internl IP címemet. Azt mondja inet addr: 127.0.0.1.

Itt van aifconfig -a:

kimenete
eth0   link encap:Ethernet  HWaddr 00:06:4f:4a:66:f0
    BROADCAST MULTICAST  MTU:1500  Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

eth1   link encap:Ethernet  HWaddr 00:16:ec:05:c8:9c 
    BROADCAST MULTICAST  MTU:1500  Metric:1
    RX packets:0 errors:0 dropped:0 overruns:0 frame:0
    TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo     Link encap:Local Loopback
    inet addr 127.0.0.1  Mask:255.0.0.0
    inet6 addr:  ::1/128 Scope:Host
    UP LOOPBACK RUNNING MTU:65536  Metric:1
    RX packets:1800 errors:0 dropped:0 overruns:0 frame:0
    Tx packets:1800 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:0
    RX bytes:143896 (143.b KB)  TX bytes:143896 (143.8 KB)

Itt vannak az / etc / network / interfaces tartalom:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

Ha valaki ezt szerkesztheti nekem, akkor az etc / network / interfaces tartalmának külön-külön kell lennie.

A host requestubuntu.com kimenete:

;; connection timed out; no servers could be reached.

Néhány hónapja beállítottam sajátcloud és webmin, és egy hónapig használtam őket problémamentesen. Azt hiszem, a hatalom egy nap eltelt 2 hónapja, és soha nem fordítottam vissza a szervert tegnapig. Nem tettem semmit, ami befolyásolta volna az internetes beállításokat. Tehát nem tudom, miért nem működik tovább. Ami a hálózati topológiámat illeti, van egy pci-e hálózati kártya a számítógéphez. Az ethernet-vonal a hálózati kártyáról egy kapcsolóra, majd egy modemre / routerre indul.

    
készlet Cam Jones 07.03.2014 14:20
forrás

8 válasz

161

Ezek a parancsok megmutatják az összes hálózati adatot

ifconfig -a

vagy

ip addr show

Ha azt mondod, hogy csak 127.0.0.1-et ad, akkor két lehetőség van:

  1. A hálózati kártya nincs csatolva, vagy a rendszer nem ismeri fel

  2. A hálózati DHCP-szerver nem fut, vagy nincs csatlakoztatva

válasz adott kamil 07.03.2014 14:32
forrás
166

Ez az, amit jelenleg ajánlok:

ip route get 8.8.8.8 | awk '{print $NF; exit}'

Ennek a parancsnak az az előnye, hogy nem kell tudnia, hogy melyik interfészt használja (eth0? eth1? vagy esetleg wlan0?), nem kell kiszűrned a localhost címeket, Docker címeket vagy VPN-t alagutak stb., és mindig kapsz az internetkapcsolatokhoz jelenleg használt IP-címet (akkor fontos, ha például ethernet-en, wifi-n vagy VPN-en keresztül csatlakozik.)

Ez nem csak azt jelenti, hogy bizonyos interfészen (például aifconfig kimenetének elemzésével) megfelelő IP-cím van beállítva, de azt is, hogy az útválasztási tábla megfelelően van beállítva.

Ezt az ötletet a ez a válasz Collin Anderson .

A internalip szkriptet használom gyűjteményem gyűjteménye a GitHubon , amelyre telepíthető:

wget https://rawgit.com/rsp/scripts/master/internalip
chmod a+x internalip

és használja:

internalip

vagy:

internalip TARGET

, és megkapod az IP-címed, amelyet a TARGET IP-cím összekapcsolásával lehet használni. Az alapértelmezett cél a8.8.8.8, amely a Google nyilvános DNS-rendezője , és egy jó alapértelmezés a Internet.

De ha más IP címen futtatod:

internalip 127.2.3.4

Akkor kapsz:

127.0.0.1

, mert ez az IP-címed, amelyet a 127.2.3.4 összekapcsolására lehet használni a visszacsatolási felületen. Ez akkor hasznos, ha a cél egy LAN, VPN vagy más speciális hálózat, amely esetben más IP-címeket is használhat a kapcsolatokhoz, mint az alapértelmezett IP-cím az internet eléréséhez.

Külső IP

A külső IP-cím ellenőrzése (az interneten lévő kiszolgálók megtekintéséhez, amikor kapcsolatba lépnek velük - amely eltérhet az itt leírt belső IP-címektől) >strong> ez a válasz .

    
válasz adott rsp 03.04.2015 04:49
forrás
137
hostname -I

Ez csak ip-címet fog adni anélkül, hogy extra információt kellene adnia.

    
válasz adott Sarath Somana 25.08.2015 08:29
forrás
18

Szerintem érdemes megemlíteni, hogy az ifconfig futása az -a opcióval minden felületet megjelenít, vagy sem, ha az interfész IP-címmel rendelkezik.

az ifconfig futása önmagában csak a hozzárendelt IP-khez tartozó interfészeket jeleníti meg.

Itt van egy jó trükk, amelyet csak IP-címek megjelenítésére használhat a Perl használatával.

# ifconfig | perl -nle'/dr:(\S+)/ && print '
192.168.1.100
127.0.0.1

A hálózati kártyát a rendszer felismeri, ezért megjelenik eth0 és eth1

Itt van egy gyors módja annak, hogy az IP-t hozzárendeljük az interfészhez, és ennek megfelelően érvényes IP / alhálózatot használjunk.

 ifconfig eth0 192.168.1.200/24 up 

akkor meg kell adnunk az alapértelmezett útvonalat

route add default gw 192.168.1.1

A legjobb

    
válasz adott user1007727 07.03.2014 22:17
forrás
8

Ez a parancs minden eszköz IP-címét megmutatja:

dev=eth0
ip addr show $dev | awk '/inet/ {print }' | cut -d/ -f1

Egy vagy két sornyi kimenetet nyomtat. Az első az inet / IPv4 cím, a másik az inet6 / IPv6, ha a rendszered ezt támogatja.

    
válasz adott Aaron Digulla 24.10.2014 16:14
forrás
5

Abban az esetben, ha aifconfig parancs nem jelenítette meg az IP címet, nagyon egyszerű és egyszerű módja annak, hogy megtudja az Ubuntu gép IP-címét a GUI-n keresztül. Kövesse az alábbi lépéseket:

Kattintson a hálózati ikonra az értesítési területen, majd kattintson a Csatlakozási információk lehetőségre.

p>

Ez olyan ablakot hoz létre, amely tartalmaz néhány információt, beleértve az IP-címet.

p>     
válasz adott Ibungo 24.09.2015 15:09
forrás
1

Sok jó válasz van itt, hogy kiválaszthatok, de azt hittem, hogy rámutatok facter , amely általában, de nem feltétlenül használatos a bábjával, hogy különböző tényeket gyűjtsön a rendszerről. Az facter legfőbb előnye, hogy olyan szép tiszta kimenetet biztosít, amely agrep,sed,awk,cut,perl stb. amelyre kíváncsi, de ha tudod ezt, akkor az alábbi IP-címet adod meg anélkül, hogy másképp tisztítanod:

facter ipaddress_eth0 
    
válasz adott mc0e 28.11.2015 16:11
forrás
1

ip parancs

Itt van egy változat aip addr módon.

Aip a-o opcióval rendelkezik, amely lehetővé teszi az összes információ egysoros elhelyezését - ez hasznos a szimulációkhoz, példáulawk vagyperl -hoz. A-4 opcióval kombinálva csak IPv4-címeket fogunk látni. Így a kimenet valami ilyesmi lenne (megjegyzés: cserélje ki a wlan7-et az ellenőrzendő felülettel):

$ ip -4 -o addr show wlan7
3: wlan7    inet 192.168.0.78/24 brd 192.168.0.255 scope global dynamic wlan7\       valid_lft 85654sec preferred_lft 85654sec

Amint láthatja, az IP cím a 4. oszlop / szó a kimeneten. A többi, az egyszerű elemzési gyakorlat az Ön által kiválasztott eszközön keresztül. Itt Python-t használok:

ip -4 -o addr show wlan7 | python -c "import sys;print sys.stdin.readlines()[0].split()[3]" 

Ugyanaz, csak itt a string<<< és a parancs helyettesítése$()

python -c "import sys;print sys.stdin.readlines()[0].split()[3]"  <<< $(ip -4 -o addr show wlan7)

Személy szerint én ezt a kedvencként elmentettem a~/.bashrc -ban, így kevesebb a gépelés.

wlan_ip() {
    ip -4 -o addr show wlan7 | python -c "import sys;print sys.stdin.readlines()[0].split()[3]" 
} 

Perl és Ruby verziója kicsit rövidebb:

$ ip -4 -o addr show  wlan7 | perl -lane 'print $F[3]'                         
192.168.0.78/24

$ ip  -4 -o addr show wlan7 | ruby -n -e 'print $_.split()[3]'                 
192.168.0.78/24

Wireshark

Ha ismeri a hálózati elemző eszközök használatát, akkor valószínűleg tudja, hogy az IP cím megszerzéséhez mindössze annyit kell tennie, hogy tisztázza a böngésző gyorsítótárát, indítsa el a Wireshark elfogást az adott felületen, és keresse meg a httpGET csomagok továbbítása. A céloszlop megjeleníti az Ön IP címét

    
válasz adott Sergiy Kolodyazhnyy 04.09.2016 20:32
forrás