獲取eth0
⑴ 關於虛擬機的eth0是什麼虛擬機是怎麼上網的
VM虛擬機配置上網
第一種情況:
主機使用PPPOE撥號上網
方法一:NAT方式
1、先關閉虛擬機中的操作系統,回到虛擬機主界面
雙擊主界面右上方的的「Ethernet」,彈出「NetworkAdapter」對話框,選擇「NAT」
2、啟動虛擬機操作系統,設置IP為動態獲取,即通過DHCP獲得。
此時虛擬機中的操作系統用的是主機的IP,主機能夠上網,那麼虛擬機也能。
方法二:Host-only方式
1、先關閉虛擬機中的操作系統,回到虛擬機主界面
雙擊主界面右上方的的「Ethernet」,彈出「NetworkAdapter」對話框,選擇「Host-only」
2、右擊撥號上網的連接,打開PPPOE連接屬性,選擇「高級」,選擇「允許其它網路用戶通過此計算機的INTERNET連接來連接」
在「家庭網路」下拉框中,選擇「VMwareNetworkAdapterVMnet1」
VMwareNetworkAdapterVMnet1虛擬網卡的IP會自動變為192.168.0.1
此時ping192.168.0.1能通即可。
3、進入vmware中,啟動linux操作系統
用netconfig命令
將IP,設為192.168.0.2(與虛擬網卡在同一網段)
網關為192.168.0.1即VMwareNetworkAdapterVMnet1虛擬網卡的IP地址
DNS設置為ISP的DNS,如61.147.37.1
4、重啟網路:
#servicenetworkrestart
此時,只要主機撥號上網後,虛擬機的系統就可以上網,且不用再撥號
方法三:Bridge方式
這種方式,虛擬機最接近一台真實的機器
1、先關閉虛擬機中的操作系統,回到虛擬機主界面
雙擊主界面右上方的的「Ethernet」,彈出「NetworkAdapter」對話框,選擇「Bridge」
2、宿主機中安裝sygate或wingate之類的代理伺服器
3、設置虛擬機的代理伺服器為宿主機的IP即可
第二種情況:
在單位區域網內
「Ethernet」要選擇「Bridge」方式
使用這種方式時,虛擬機跟一台真實的機器一樣,此時IP設置為區域網中另一個可用IP即可
網關:區域網網關伺服器的地址(或路由器的地址)
DNS:設置為ISP的DNS伺服器地址
⑵ 獲取eth0網卡上80埠的數據包信息
[root@haojiu ~]# tcpmp -i eth0 port 80
如果有什麼不懂的話可以去看看《Linux就該這么學》這本書,非常適合新手學習Linux。
⑶ shell獲取eth0 地址
This will give you all IPv4 interfaces, including the loopback 127.0.0.1:
This will only show eth0:
And this way you can get IPv6 addresses:
Only eth0 IPv6:
附加:
Getting the external IP
⑷ linux eth0網路問題
1、vi /etc/sysconfig/network-scripts/ifcfg-eth0
ifcfg-eth0的配置文件里保存了以前的MAC地址,
2、把ifcfg-eth0的NETMASK=192.168.116.0GATEWAY=192.168.116.2子網掩碼是255.255.255.0刪除
3、把/etc/udev/rules.d/70-persistent-net.rules 刪除後重啟機器就可以了重啟
⑸ 獲取Linux IP地址的六種方法總結
本文總結六種查看Linux IP地址的方法,方便以後的運維開發工作。
在介紹前先學習一下三個命令行篩選的主要的指令,也是頻繁使用到的命令。
1、head。 head 命令可用於查看文件的開頭部分的內容,有一個常用的參數 -n 用於顯示行數,默認為 10。
運行head --help查看說明信息:
-q 隱藏文件名
-v 顯示文件名
-c<數目> 顯示的位元組數。
-n<行數> 顯示的行數。
2、grep。 grep 命令用於查找文件里符合條件的字元串。運行grep --help查看說明信息,參數太多主要有以下幾種:
grep -r遞歸選擇。
grep -v反選,顯示不包含匹配文本的所有行。
grep -n顯示符合樣式的那一行之前。
grep -A顯示符合範本樣式的那一列之外,並顯示該行之後的內容。
3、awk。 強大的文本分析工具,命令使用過於復雜(awk --help),只需要知道 awk '{print$2}'為列印第二行數據。
4、tail 。tail命令可用於查看文件的結束部分的內容,有一個常用的參數 -n 用於顯示行數,默認為 10。tail --help查看主要的參數:
tail -n顯示最後多少行
tail -c顯示最後十個字元
tail -f 循環讀取,跟蹤顯示最後十行
5、cut。 顯示每行從開頭算起的文字。
cut -b :以位元組為單位進行分割。
cut -c :以字元為單位進行分割
cut -d :自定義分隔符,默認為製表符
cut -f :與-d一起使用,指定顯示哪個區域
無線網卡地址:
echo wlan0=`ifconfig wlan0 | head -n2 | grep inet | awk '{print$2}'`
有線網卡地址:
echo eth0=`ifconfig eth0 | head -n2 | grep inet | awk '{print$2}'`
或者命令:
ifconfig | grep "inet " | cut -d: -f2 | awk '{print $1}' | grep -v "^127."
無線網卡地址:
ip address | grep wlan0 | awk '{print$2}'
有線網卡地址:
ip address | grep eth0 | awk '{print$2}'
或者
echo eth0=`ip address show eth0 | head -n4 | grep inet | awk '{print$2}'
echo wlan0=`ip address show wlan0 | head -n4 | grep inet | awk '{print$2}'
運行hostname -help命令查看說明信息:
Program options:
-a, --alias alias names
-A, --all-fqdns all long host names (FQDNs)
-b, --boot set default hostname if none available
-d, --domain DNS domain name
-f, --fqdn, --long long host name (FQDN)
-F, --file read host name or NIS domain name from given file
-i, --ip-address addresses for the host name
-I, --all-ip-addresses all addresses for the host
-s, --short short host name
-y, --yp, --nis NIS/YP domain name
hostname -i得到環回地址127.0.1.1, hostname -I得到具體的網卡信息192.168.31.82 。
php語言查看ip就是使用函數shell_exec來執行shell命令。
比如:
<?php
echo shell_exec("echo wlan0=`ifconfig wlan0 | head -n2 | grep inet | awk '{print$2}'`");
?>
然後執行php ip.php 。shell_exec()裡面可以放置任何shell命令。這個方法的意義在於php可以通過網頁對外提供服務。
#!/usr/bin/env python
import socket
import fcntl
import struct
def get_ip_address(ifname):
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
return socket.inet_ntoa(fcntl.ioctl(
s.fileno(),
0x8915, # SIOCGIFADDR
struct.pack('256s', ifname[:15])
)[20:24])
Local_wlan0=get_ip_address("wlan0")
Local_lo=get_ip_address("lo")
#Local_eth0=get_ip_address("eth0")
print Local_wlan0
print Local_lo
#print Local_eth0
利用socket包,然後執行python ip.py 得到wlan0信息。
#!/usr/bin/env python
import os
def get_ip():
out = os.popen("echo wlan0=`ifconfig wlan0 | head -n2 | grep inet | awk '{print$2}'`").read()
print out
if __name__ == '__main__':
get_ip()
和php的shell_exec函數類似,os.popen()裡面可以放置任何shell命令。注意有個函數os.system的結果只是命令執行結果的返回值,執行成功為0;os.popen()可以讀出執行的內容,輸出的結果比較特殊,帶換行符\n 。
⑹ ubuntu Linux 安裝後ifconfig看見有eth0和lo,但是在/dev目錄中沒有eth0這個設備,為什麼呢
/dev
下本來就沒有網路設備,你的dev下還有CPU不成?
你的IPv4沒有配置,所以你的inet
addr沒有咯.
可以使用ifconfig
eth0
inet
up
192.168.0.1
這樣來配置
不過重啟後就會自動消除的
固定的話就在
/etc/network/inteface文件裡面配置
allow-hotplug
eth0
#我在我虛擬機是添了這行的
auto
eth0
iface
eth0
inet
static
addrsee
192.168.0.32
netmask
192xxx
broadcast
xxxx
gateway
xxxxx
⑺ linux 網卡eth0檢測時沒有IP地址,怎麼回事
我想你的網卡IP地址的獲取方式是DHCP方式,你可以設置成為static方式,方法是:執行setup命令,選擇network設置這一項,來設置靜態IP地址獲取方式,並設置IP地址。
然後,再啟動一下network服務:
service network restart
再用ifconfig命令查看一下IP地址是不是有了呢?
⑻ ubuntu12.04 沒有eth0怎麼辦
這樣給你解釋你看看 eth0上IP為自動獲取
eth1上為手工設置(又是VPC自己要求的)
配置過程:
1、打開Ubuntu的/etc/network/interfaces文件 。默認內容如下:
auto lo
iface lo inet loopback
2、eth0為自動獲取IP,所以不需要配置了。插入要手工設置IP的eth1的IP信息,編輯後內容如下,前面auto eth1,讓網卡開機自動掛載.:
auto lo
iface lo inet loopback
auto eth1
iface eth1 inet static
address 192.168.0.101
netmask 255.255.255.0
network 192.168.0.0
broadcask 192.168.0.255
gateway 192.168.0.2
3、編寫完畢保存,然後打開終端運行如下命令,重新啟動網卡即可:
$ /etc/init.d/networking restart
也可以重啟網卡讓新配置生效,優點是不影響其他網路介面:
$ sudo ifdown eth0
$ sudo ifup eth04、如果以DHCP方式配置網卡,則改為:
auto eth0
iface eth0 inet dhcp
也可以在命令行下直接輸入下面的命令來獲取地址
sudo dhclient eth0
5、配置DNS伺服器的地址,最多可以使用3個DNS伺服器
$ sudo vi /etc/resolv.conf
nameserver 202.96.134.133
nameserver 202.96.128.68
nameserver 202.96.128.166
對"resolv.conf"的修改是即時生效的。可以使用nslookup命令進行DNS伺服器查詢,以驗證"resolv.conf"配置文件。
如何查看DNS
$ less /etc/resolv.conf