linux系統ip地址eth
『壹』 獲取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 。
『貳』 linux系統怎麼設置IP
首先你得知道幾個命令:x0dx0aifconfig 查看網卡信息的命令(網卡以eth0~ethN命名,看你網卡用的是哪個)。另外,它只在root用戶下可能,一般普通用戶不能用。x0dx0aroute -n 查看路由的命令。x0dx0acat /etc/resolv.conf 查看DNS,配置DNS可在這個文件配置x0dx0a命令行里有三種修改IP方法,其中一種是臨時的,重啟後就沒有了,在此不提了。只說兩種永久生效的:x0dx0a1,在命令行里,通過命令調出圖形界面配置,比較直觀,容易配置:x0dx0a命令x0dx0asetupx0dx0a彈出圖形界面,選擇network configuration ----> 回車----->兩個選項,第一個是網卡,第二個是DNS,在此不多講了。寫太多了,最主要是很直觀。x0dx0a最後配置完了後,點TAB鍵或者上下左右鍵 選:OK---->save--->save&quit--->quitx0dx0ax0dx0a2,命令行編寫配置文件來實現,一般你的網卡是eth0.x0dx0a# vi /etc/sysconfig/network-scripts/ifcfg-eth0 x0dx0aDEVICE=eth0 #描述網卡對應的設備別名,例如ifcfg-eth0的文件中它為eth0 x0dx0aBOOTPROTO=static #設置網卡獲得ip地址的方式,可能的選項為static,dhcp或bootp,分別對應靜態指定的 ip地址,通過dhcp協議獲得的ip地址,通過bootp協議獲得的ip地址 x0dx0aBROADCAST=192.168.0.255 #對應的子網廣播地址 x0dx0aHWADDR=00:07:E9:05:E8:B4 #對應的網卡物理地址 x0dx0aIPADDR=192.168.0.2 #如果設置網卡獲得 ip地址的方式為靜態指定,此欄位就指定了網卡對應的ip地址 x0dx0aIPV6INIT=no x0dx0aIPV6_AUTOCONF=no x0dx0aNETMASK=255.255.255.0 #網卡對應的網路掩碼 x0dx0aNETWORK=192.168.0.0 #網卡對應的網路地址 x0dx0aONBOOT=yes #系統啟動時是否設置此網路介面,設置為yes時,系統啟動時激活此設備x0dx0ax0dx0a修改對應網卡的網關的配置文件x0dx0avi /etc/sysconfig/network x0dx0aNETWORKING=yes(表示系統是否使用網路,一般設置為yes。如果設為no,則不能使用網路,而且很多系統服務程序將無法啟動)x0dx0aHOSTNAME=localhost(設置本機的主機名,這里設置的主機名要和/etc/hosts中設置的主機名對應)x0dx0aGATEWAY=192.168.1.1(設置本機連接的網關的IP地址。)
『叄』 Linux配置ip地址的兩種方法
Linux配置ip地址的兩種方法,實驗環境為centos7.6
方法1:nmcli工具配置 (centos7以下版本不支持該方法)
第一步,通過nmcli connection查看網卡名稱
[root@localhost ~]# nmcli connection
NAME UUID TYPE DEVICE
eth0 09be0948-faf1-43b6-a5a4-c19efab0bb48 ethernet eth0
第二步,配置ip,網關,dns,並設置網卡開機自動啟動,最後開啟網卡
[root@localhost ~]# nmcli connection modify eth0 ipv4.addresses "192.168.1.201/24"
說明:配置地址和掩碼
[root@localhost ~]# nmcli connection modify eth0 ipv4.gateway "192.168.1.1"
說明:配置網關
[root@localhost ~]# nmcli connection modify eth0 ipv4.dns "180.76.76.76"
說明:配置dns
[root@localhost ~]# nmcli connection modify eth0 ipv4.method manual
說明:地址獲取的方法為手動配置而不是dhcp
[root@localhost ~]# nmcli connection modify eth0 autoconnect yes
說明:開機自動打開網卡
[root@localhost ~]# nmcli connection up eth0
說明:立即打開網卡
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4)
第三步,查看結果(這里使用ip addr命令查看,較新版本Linux系統支持該命令)
[root@localhost ~]# ip addr
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:84:23:62 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.201/24 brd 192.168.1.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
inet6 fe80::b7ad:e2ed:832e:99a9/64 scope link noprefixroute
valid_lft forever preferred_lft forever
測試通信
[root@localhost ~]# ping www..com
PING www.a.shifen.com (61.135.169.121) 56(84) bytes of data.
64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=1 ttl=53 time=34.7 ms
64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=2 ttl=53 time=27.9 ms
64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=3 ttl=53 time=24.1 ms
64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=4 ttl=53 time=25.2 ms
64 bytes from 61.135.169.121 (61.135.169.121): icmp_seq=5 ttl=53 time=24.2 ms
^C
--- www.a.shifen.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 24.177/27.277/34.718/3.970 ms
方法2:通過vi編輯網卡配置文件(最新版rhel8或centos8不推薦該方法,老版本rhel6及以下推薦該方法)
第一步,通過vi或vim打開配置文件
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
第二步,編輯相關的參數
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0
UUID=09be0948-faf1-43b6-a5a4-c19efab0bb48
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.1.202
PREFIX=24
GATEWAY=192.168.1.1
DNS1=180.76.76.76
PEERDNS=no
vi的編輯方法是,輸入字母i,進行編輯,編輯完成後,按esc,再按:wq 保存退出。如果不保存,則是:q!退出
第三步,重啟網路服務
[root@localhost ~]# service network restart
Restarting network (via systemctl): [ OK ]
第四步,查看結果並測試通信(這里用ifconfig命令來查看,各種版本Linux均支持該命令)
[root@localhost ~]# ifconfig eth0
eth0: flags=4163 mtu 1500
inet 192.168.1.202 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::b7ad:e2ed:832e:99a9 prefixlen 64 scopeid 0x20
ether 00:0c:29:84:23:62 txqueuelen 1000 (Ethernet)
RX packets 1117 bytes 127303 (124.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 564 bytes 69559 (67.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@localhost ~]# ping www..com
PING www.a.shifen.com (61.135.169.125) 56(84) bytes of data.
64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=1 ttl=53 time=28.2 ms
64 bytes from 61.135.169.125 (61.135.169.125): icmp_seq=2 ttl=53 time=30.9 ms
^C
--- www.a.shifen.com ping statistics ---
3 packets transmitted, 2 received, 33% packet loss, time 2003ms
rtt min/avg/max/mdev = 28.228/29.590/30.953/1.373 ms
[root@localhost ~]#
配置地址的兩種方法就介紹到這里。
但是查看地址時,我們並沒有看到網關和dns,那麼網關和dns怎麼看呢,用以下兩條命令即可
[root@localhost ~]# route -n 通過查看路由表來知道網關
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 100 0 0 eth0
[root@localhost ~]# cat /etc/resolv.conf 通過查看rsolv.conf文件來查看dns
# Generated by NetworkManager
nameserver 180.76.76.76
更多網路技術公開課,騰訊課堂搜「 眾元教育 」,戳 免費公開課 ,可直接聽課哦!
『肆』 linux配置中eth0和eth1做什麼用的
是一種光纖乙太網介面卡,按照乙太網通信協議進行信號傳輸。一般通過光纜與光纖乙太網交換機連接。
Eth0和eth1用於區分網卡名。它們的含義與windows本地連接1和本地連接2相同。
這里的子網卡不是一個實用的網路介面,但是它可以作為一個集合介面在系統中閃現,比如eth0:1,eth1:2。
(4)linux系統ip地址eth擴展閱讀:
Linux操作系統嵌入了TCP/IP協議棧,協議軟體具有路由轉發功能。路由和轉發依賴於在主機中安裝多個網卡作為路由器。
當某一網卡接收到度包時,系統內核會根據度包的目的IP地址查詢路由表,然後根據查詢結果將度包發送到另一網卡,最後通過該網卡發送度包。主機的進程是路由器的核心功能。
路由功能是通過修改Linux內核參數來實現的。sysctl命令用於配置和顯示/proc/sys目錄中的內核參數。
出於安全原因,Linux內核默認禁止數據包路由和轉發。在Linux系統中,有臨時和永久兩種方法啟用轉發功能。
『伍』 如何在linux系統中設置靜態ip地址
第一步:激活網卡
Linux系統裝好後默認的網卡是eth0,用下面的命令將這塊網卡激活。
代碼如下
復制代碼
#
ifconfig
eth0
up
第二步:設置網卡進入系統時啟動
想要每次開機就可以自動獲取IP地址上網,就要設置網路服務在系統啟動時也啟動。Linux有一點與windows不同的是很多服務默認是停止的,而且你
在某次使用該服務時啟動這個服務,但是沒設置它為默認啟動,則下次進入系統這個服務依然是停止的。下面是設置網路服務在系統啟動時也啟動的方法。
使用chkconfig命令讓網路服務在系統啟動級別是0123456時默認啟動。
代碼如下
復制代碼
#
chkconfig
–level
0123456
network
on
第三步:修改網卡文件ifcfg-eth0
修改ifcfg-eth0文件,設置ONBOOT的值為yes,讓網路服務啟動時使用該網卡。設置BOOTPROTO的值為dhcp,讓網卡從DHCP伺服器自動獲取IP地址。
代碼如下
復制代碼
#
vi
/etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes
BOOTPROTO=dhcp
靜態IP地址配置
配置靜態IP地址上網與動態IP地址上網同出一轍,修改ifcfg-eth0,然後用命令service
network
retart重啟網路服務。
例:
代碼如下
復制代碼
DEVICE=eth0
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS=8.8.8.8
BOOTPROTO=static
ONBOOT=yes
第一種:使用命令修改(直接即時生效,重啟失效)
代碼如下
復制代碼
#ifconfig
eth0
192.168.0.1
netmask
255.255.255.0
up
說明:
eth0是第一個網卡,其他依次為eth1,eth*
192.168.0.1是給網卡配置的第一個網卡配置的ip地址
netmask
255.255.255.0
配置的是子網掩碼
up是表示立即激活
ifconfig的更多參數說明查看相關幫助
代碼如下
復制代碼
gateway:
#
route
add
default
gw
192.168.30.1
eth0
dns:
#
vi
etc/resolv.conf
nameserver
202.131.80.1
nameserver
202.131.80.5
如果要重起生效,就把這些寫到起動腳本
rc.local中
第二種:修改配置文檔(需要重啟網路配置,永遠生效)
一、修改IP地址
手動改/etc/sysconfig/network-scripts/ifcfg-eth0文件
#第二塊網卡:vi
/etc/sysconfig/network-scripts/ifcfg-eth1
代碼如下
復制代碼
DEVICE=eth0
#物理設備名
IPADDR=192.168.1.10
#IP地址
NETMASK=255.255.255.0
#掩碼值
NETWORK=192.168.1.0
#網路地址(可不要)
BROADCAST=192.168.1.255
#廣播地址(可不要)
GATEWAY=192.168.1.1
#網關地址
ONBOOT=yes
#
[yes|no](引導時是否激活設備)
USERCTL=no
#[yes|no](非root用戶是否可以控制該設備)
BOOTPROTO=static
#[none|static|bootp|dhcp](引導時不使用協議|靜態分配|BOOTP協議|DHCP協議)
注:單網卡綁定兩個IP
Linux的設備配置文件存放在/etc/sysconfig/network-scripts裡面,
對於乙太網的第一個設備,配置文件名一般為ifcfg-eth0
如果需要為第一個設備綁定多一個IP地址,
只需要在/etc/sysconfig/network-scripts目錄裡面創建一個名為ifcfg-eth0:0的文件,
內容樣例為:
代碼如下
復制代碼
DEVICE="eth0:0"
IPADDR="211.100.10.119"
NETMASK="255.255.255.0"
如果需要再綁定多一個IP地址,只需要把文件名和文件內的DEVICE中的eth0:x加一即可。LINUX最多可以支持255個IP別名。
其中的DEVICE為設備的名稱,IPADDR為此設備的IP地址,NETMASK為子網掩碼,ONBOOT表示在啟動時自動啟動。
『陸』 Linux配置網路參數之IP地址、子網掩碼、網關地址,DNS
修改網卡命令規則 (eth0、eth1、eth2……)
打開grub內核引導程序,在……quiet 後面添加:
讓網卡命名規則生效
nmcli命令刪除錯誤網卡命名
nmcli命令添加網卡命名
解析: nmcli connection 添加 類型 乙太網設備 網卡設備名為eth0 nmcli命令的命名為eth0
修改IP地址、子網掩碼、網關地址、DNS
解析:nmcli connection 修改 網卡名 ipv4.方法 手工配置 ipv4.地址192.168.4.7/24 ipv4.網關 192.168.4.254 每次開機自動啟用以上所有參數
查看網卡配置文件
查看網關地址信息
『柒』 配置LINUX的IP命令
1、首先使用root用戶登錄到linux操作系統。
『捌』 linux中ip地址的配置方法
Linux下配置ip地址四種方法
linux系統安裝完,以後通過命令模式配置網卡IP。
配置文件通常是/etc/sysconfig/network-scripts/ifcfg-interface-name
ifconfig後顯示的內容,lo代表loop迴路。
一、Ifconfig命令
第一種使用ifconfig命令配置網卡的ip地址。此命令通常用來零時的測試用,計算機啟動後,ip地址的配置將自動失效。具體用法如下:
Ifconfig ethx ipaddr netmask x.x.x.x
ethx中的x代表第幾快乙太網卡,默認第一塊為0;ipaddr代表ip地址;x.x.x.x為子網掩碼。
例如給網卡eth0配置的ip地址為192.168.1.1 子網掩碼為 255.255.255.0 。
如下下圖所示:
『玖』 Linux查詢IP地址
『拾』 在linux系統怎麼修改ip地址
方法/步驟:
1.首先,我們來看看ip地址。 ifconfig 小編這里的是eth0,可以看到詳細...
2.我們要永久修改IP地址的話,只能修改網卡的配置文件。小編這里偏愛red hat,...
3.ls查看目錄文件。 我們可以看到我們的eth0的配置文件是ifcfg-eth0 i...
4.我們vim ifcfg-eth0打開配置文件
5.可以看到,小編這里使用的是dhcp自動獲取IP地址(因為BOOTPROTO的參數為d...