linux挖eth教程
① linuxeth1
linuxethtool璇﹁В錛
ethtool鏄疞inux涓嬬敤浜庢煡璇㈠強璁劇疆緗戝崱鍙傛暟鐨勫懡浠ゃ
ethtool鍛戒護澶氱敤浜庢墜宸ヨ劇疆緗戠粶閫熺巼錛屼竴鑸鍗冨厗緗戝崱鏀鎸10|100|1000涓変釜閫熺巼錛屽崟浣嶆槸Mbps銆
渚嬪傦細ethtool-
姝ゆ寚浠ゅ皢eth0璁懼囪劇疆涓哄叏鍙屽伐鑷閫傚簲錛岄熷害涓100Mbs銆傝嫢瑕乪th0鍚鍔ㄦ椂璁劇疆榪欎簺鍙傛暟,淇鏀規枃浠/etc/sysconfig/network-scripts/ifcfg-eth0錛屾坊鍔犲備笅涓琛:
ETHTOOL_OPTS=speed100plexfullautonegoff
榪欎釜鍛戒護澶氱敤浜庣$悊澶氱綉鍙g殑鏈嶅姟鍣ㄤ富鏈猴紝鐢變簬鑳屾澘鐨勭綉緇滅鍙f暟閲忓ぇ錛屾湁鏃跺欎笉鐭ラ亾閭d釜鐗╃悊絝鍙e瑰簲eth0鎴栧叾浠栬懼囧彿錛屾垜浠灝卞彲浠ヤ嬌鐢ㄨ繖涓鍛戒護鏉ユ煡璇銆
Linux緋葷粺Centos娌℃湁緗戝崱eth0閰嶇疆鏂囦歡鎬庝箞鍔烇紵
涓存椂瑙e喅鍔炴硶
涓銆佸ぇ瀹墮兘鐭ラ亾linux涓嬮潰璁劇疆ip鏄痠fconfig鍛戒護錛岄氳繃涓嬮潰鍛戒護鍗沖彲涓存椂璁劇疆IP鍦板潃銆
ifconfig璁懼囧悕IP鍦板潃(ifconfigeth0192.168.1.117)
浜屻佽劇疆濂戒箣鍚庨┈涓婄敓鏁堬紝涓嶉渶瑕侀噸鍚緗戝崱鏈嶅姟錛堝崈涓囧埆閲嶅惎緗戝崱鏈嶅姟,涓嶇劧鍒氬垰璁劇疆鐨勫張娌℃湁浜嗭級ifconfig鍗沖彲鏌ョ湅褰撳墠緗戝崱鐨処P鍦板潃銆
姘鎬箙瑙e喅鍔炴硶鏂規硶
涓銆佸嶅埗璁劇疆閰嶇疆鏂囦歡
涓鑸鏉ヨ村傛灉娌℃湁緗戝崱eth0閰嶇疆鏂囦歡錛屼綘鍒扮綉鍗¢厤緗鐩/etc/sysconfig/network-scripts/涓嬮潰閮戒細鏈変竴涓猧fcfg-lo鍥炵幆鎺ュ彛閰嶇疆鏂囦歡錛屾嫹璐濅竴浠姐
浜屻佹嫹璐濅簡涓涓猯o閰嶇疆鏂囦歡涔嬪悗錛屾妸鏂囦歡IP鍦板潃鍜屽弬鏁版敼涓涓嬫敼鎴恊th0淇濆瓨鍗沖彲鍟︼紒
涓夈佺紪鍐欓厤緗鏂囦歡
閫氳繃涓婅堪鏂規硶澶嶅埗鐨勬枃浠朵笉瀹屾暣錛屽彲浠ラ氳繃vi緙栬緫杈撳叆琛ュ叏銆傛垨鑰呯洿鎺ユ墜鍔ㄨ緭鍏ヨ劇疆錛屽叿浣撹︾粏鍙傛暟鍙傝冨備笅鍥懼垪琛
鐗瑰埆鎻愰啋涓涓嬶紝濡傝佽劇疆mac鍦板潃錛屽彲浠ュ厛ifconfig鏌ョ湅涓涓嬶紝鍙浠ョ湅鍒癿ac鍦板潃鐨勫枖
鍥涖侀噸鍚緗戠粶鏈嶅姟
璁劇疆濂界綉鍗¢厤緗涔嬪悗錛岄渶瑕佹妸緗戠粶鏈嶅姟閲嶅惎涓涓嬨傝緭鍏ュ備笅鍛戒護
servicenetworkrestart
濡傛灉娌℃湁鎻愮ず浠諱綍閿欒鍒欒〃紺鴻劇疆鏍煎紡鍩烘湰娌℃湁闂棰樺搱
浜斻佸傛灉MAC鍦板潃璁劇疆閿欒鐨勮瘽錛屼細鎻愮ず涓嬮潰淇℃伅銆
鍙浠ュ厛ifconfig鏌ョ湅涓涓嬶紝鍙浠ユ煡鐪嬫g『鐨凪AC鍦板潃錛屽綋鐒朵綘涔熷彲浠ョ洿鎺ユ妸mac鍦板潃璁劇疆閭d竴鏍忓幓鎺夊彲浠ャ
瀹夎卨inux鍚庣敤ifconfig鍛戒護娌℃湁鏄劇ず鏈塭th0緗戝崱錛屾庝箞鍥炰簨錛
閲嶆柊鎵撳紑eth0灝辮屼簡絎涓姝ワ細鎵撳紑terminal錛岃緭鍏cd/etc/sysconfig/network-scripts榪涘叆鐩褰曪紝杈撳叆ifconfig-a鍛戒護錛屽彲浠ョ湅鍒癳th0鍜宭o銆
絎浜屾ワ細杈撳叆ifconfigeth0up錛屽惎鐢ㄧ綉鍗°傛ゆ椂鐢╥fconfig錛屽彧鑳界湅鍒癷net6鐨勫湴鍧錛屾病鏈塱p絎涓夋ワ細杈撳叆vi/etc/sysconfig/network-scripts/ifcfg-eth0緙栬緫鏂囦歡錛屾妸ONBOOT=no鏀逛負ONBOOT=yes錛屾鏌ュ叾浠栦俊鎮鍙堟病閿欒銆
絎鍥涙ワ細杈撳叆servicenetworkrestart錛岄噸鍚鏈嶅姟
linux璇ユ庝箞鍗歌澆緗戝崱錛
涓銆佸垹闄VM涓澶氫綑鐨剗fcfg-eth0.bak鏈夌殑Linux緋葷粺鏇存敼緗戝崱鎴栫綉鍗MAC鍦板潃鍚庝細鍑虹幇涓猠th0.bak閰嶇疆澶囦喚鏂囦歡瑙e喅鏂規硶錛/etc/sysconfig/networking/devices鐩褰曚笅錛屽皢ifcfg-eth0.bak鍒犻櫎/etc/sysconfig/networking/profiles/default錛屽皢ifcfg-eth0.bak鍒犻櫎/etc/sysconfig/network-scripts/錛屽皢ifcfg-eth0.bak鍒犻櫎
浜屻佸垹闄Linux緋葷粺涓澶氫綑鐨勭綉鍗(渚嬪傦細eth1)/etc/modprobe.conf錛屽垹闄aliaseth1XXXX/etc/sysconfig/networking/devices鐩褰曚笅錛屽皢ifcfg-eth1鍒犻櫎/etc/sysconfig/networking/profiles/default鐩褰曚笅錛屽皢ifcfg-eth1鍒犻櫎/etc/sysconfig/network-scripts/鐩褰曚笅錛屽皢ifcfg-eth0.bak鍒犻櫎
涓夈佹嫻嬬綉緇滄帴鍙(eth0)鏄鍚﹀伐浣滄e父/etc/modprobe.conf錛岃ユ枃浠朵腑蹇呴』鏈夛細aliaseth0XXX/etc/sysconfig/hwconf錛岃ユ枃浠朵腑eth0瀵瑰簲鐨勯厤緗涔熷繀欏繪g『/etc/sysconfig/network-scripts鐩褰曚笅錛屽繀欏繪湁緗戠粶鎺ュ彛鐨勯厤緗鏂囦歡錛歩fcfg-eth0/etc/sysconfig/network-scripts/ifcfg-eth0鏂囦歡涓鐨勯厤緗鏄鍚︽g『錛屼緥濡傦細DEVICE=eth0
楹葷儲闂涓猯inux闂棰.eth0:0涓巈th0鏈変粈涔堝叧緋誨悧錛
eth0鏄涓鍧楃墿鐞嗙綉鍗°
eth0:0鍙浠ョ悊瑙d負eth0鉶氭嫙鍑烘潵鐨勪竴鍧楃綉鍗°備綘榪樺彲浠ヨ櫄鎷熸洿澶氱殑:1,:2絳夌瓑銆備富瑕佹槸涓轟簡鍦ㄤ竴鍧楃綉鍗′笂璁劇疆澶氫釜IP鐢ㄧ殑銆② eth挖礦是什麼原理
凡是涉及到幣,就一定離不開挖礦。以太坊網路中,想要獲得以太坊,也要通過挖礦來實現。說到挖礦,就一定離不開共識機制。
不知道大家還記得比特幣的共識機制是什麼嗎?比特幣的共識機制是 PoW (這是英文 Proof of Work 的縮寫,意思是「工作量證明機制」)。簡單來說,就是多勞多得,你付出的計算工作越高,那麼你就越有可能第一個找到正確的哈希值,就越有可能得到比特幣獎勵。
但是,比特幣的PoW存在著一定的缺陷,就是它處理交易的速度太慢,礦工們需要不斷地通過計算來碰撞哈希值,這是勞民傷財且效率低下的。對區塊鏈知識有涉獵的朋友們應該看到這樣一種說法:
以太坊為了彌補比特幣的不足,提出了新的共識機制,名叫 PoS(這是英文的縮寫,意思是「權益證明」,也有翻譯成「股權證明」的)。
PoS 簡單來講,其實就跟它的字面意思一樣:權益嘛,股權嘛,你持有的幣越多相當於你的股權越多,你的權益越高。
以太坊的PoS就是說:你持幣越多,你持有幣的時間越久,你的計算難度就會降低,挖礦會容易一些。
在以太坊最初的設定中,以太坊希望能夠通過階段性的升級,在前期依舊採用PoW來構建一個相對穩定的系統,之後逐漸採用 PoW+PoS,最後完全過渡到 PoS。所以,說以太坊的共識機制是PoS,沒錯,但是PoS只是以太坊發布之初的一個計劃或者說目標,目前以太坊還沒有過渡到 PoS,以太坊採用的共識機制仍是 PoW,就是比特幣那個 PoW,但是又和比特幣的PoW稍稍不同。
這里的信息量有點大,
第一個信息點是:以太坊目前採用的共識機制也是PoW,但是和比特幣的PoW稍稍不同。那麼,和比特幣的PoW到底有什麼不同呢:簡單來說,就是以太坊挖礦難度可以調節,比特幣挖礦難度不能調節。就好比咱們高考,因為各個省份的教學情況、生源人數都不一樣,所以高考分為全國卷和各省自主命題。
以太坊說我贊成這樣分地區出題,比特幣說:不行,必須全國同一卷,大家難度都一樣!
通俗解釋,就是,比特幣是利用計算機算力做大量的哈希碰撞,列舉出各種可能性,來找到一個正確哈希值。而以太坊系統呢,它有一個特殊的公式用來計算之後的每個塊的難度。如果某個區塊比前一個區塊驗證的更快,以太坊協議就會增加區塊的難度。通過調整區塊難度,就可以調整驗證區塊所需的時間。
以太坊協議規定,難度的動態調整方式是使全網創建新區塊的時間間隔為 15 秒,網路用 15 秒時間創建區塊鏈,這樣一來,因為時間太快,系統的同步性就大大提升,惡意參與者很難在如此短的時間發動51%(也就是半數以上)的算力去修改歷史數據。
第二個信息點是:以太坊最初的設定中,希望通過階段性升級來最終實現由 PoW 向
PoS過渡的。
時間追溯到 2014 年,在以太坊發布之初,團隊宣布將項目的發布分為四個階段,即 Froniter(前沿)、Homestead(家園)、Metropolis(大都會)和 Serenity(寧靜)。前三個階段共識機制採用 PoW(工作量證明機制),第四個階段切換到 PoS(權益證明機制)。
2015年7月30號,以太坊第一個階段「前沿」正式發布,這個階段只適用於開發者使用,開發人員可於在以太坊網路上編寫智能合約和去中心化應用程序 DAPP,礦工開始進入以太坊網路維護網路安全並挖礦得到以太幣。前沿版本類似於測試版,證明以太坊網路到底是不是可靠的。
2016年3月14日,以太坊進入到第二個階段「家園」,這一階段,以太坊提供了錢包功能,讓普通用戶也可以方便體驗和使用以太坊。其他方面沒有什麼明顯的技術提升,只是表明以太坊網路已經可以平穩運行。
2017 年 9 月,以太坊已經進行到第三個階段「大都會」。「大都會」由拜占庭和君士坦丁堡兩次升級組成,這個階段的的目標是希望能夠引入 PoW 和 PoS 的混合鏈模式,為 PoW向PoS的順滑過渡做准備。最近比較熱門的「以太坊君士坦丁堡升級」升級的就是這個,在君士坦丁堡升級中呢,以太坊將對底層協議和演算法做一些改變,來為實現 PoW 和
PoS奠定良好的基礎。
以太坊挖礦會得到對多少獎勵呢?贏得區塊創建競爭成功的礦工會得到這么幾項收入:
1、 靜態獎勵,5個以太坊;
2、 區塊內所花費的燃料成本,也就是Gas,這部分我們上一期內容講過;
3、 作為區塊組成部分,包含「叔區塊」的額外獎勵,叔就是叔叔的叔,每個叔區塊可以得到挖礦報酬的1/32作為獎勵,也就是5乘以1/32,等於0.15625 個以太坊。這里我們簡單解釋一下「叔區塊」,「叔區塊」這個概念是以太坊提出來的,為什麼要引進叔塊的概念?這還要從比特幣說起。在比特幣協議中,最長的鏈被認為是絕對的正確。如果一個塊不是最長鏈的一部分,那麼它被稱為是「孤塊」。一個孤立的塊是一個塊,它也是合法的,但是可能發現的稍晚,或者是網路傳輸稍慢,而沒有能成為最長的鏈的一部分。在比特幣中,孤塊沒有意義,隨後將被拋棄掉,發現這個孤塊的礦工也拿不到采礦相關的獎勵。
但是,以太坊不認為孤塊是沒有價值的,以太坊系統也會給與發現孤塊的礦工回報。在以太坊中,孤塊被稱為「叔塊」(uncle block),它們可以為主鏈的安全作出貢獻。 以太坊十幾秒的出塊間隔太快了,會降低安全性,通過鼓勵引用叔塊,使引用主鏈獲得更多的安全保證(因為孤塊本身也是合法的) ,而且,支付報酬給叔塊,還能激發礦工積極挖礦,積極引用叔塊,所以,以太坊認為,它是有價值的。
③ linux下如何區分eth0,eth1,eth2,eth3
ethtool -p eth0
回車後與eth0 相對應的網卡介面旁邊的指示燈就會閃爍,這樣你就能很快確定eth0 網口的位置(按下Ctrl+C 結束命令,停止閃爍)
同樣確定eth1、eth2.。。。
④ Linux系統\Centos沒有網卡eth0配置文件怎麼辦
CentOS下找不到eth0設備的解決方法
問題描述:
ifconfig命令無法找到eth0設備,且/etc/sysconfig/network-scripts/中只有ifcfg-lo文件,而沒有ifcfg-eth0。
臨時解決方法一:
使用命令ifconfig eth0 192.168.1.x可以正常設置eth0的IP,該方法僅為臨時處理辦法,系統重啟後即失效了。
永久解決方法二:
1、在/etc/sysconfig/network-scripts/目錄下新建ifcfg-eth0文件;
2、正確設置ifcfg-eth0的DEVICE、BOOTPROTO、ONBOOT、IPADDR、GATEWAY、DNS1、DOMAIN、NETMASK、NETWORK、NAME等等,比如:
DEVICE=eth0
物理設備名稱
IPADDR=192.168.1.x IP地址
NETMASK=255.255.255.0 子網掩碼
NETWORK=192.168.1.0 指定網路,通過IP地址和子網掩碼自動計算得到
GATEWAY=192.168.1.1 網關地址
BROADCAST=192.168.1.255 廣播地址,通過IP地址和子網掩碼自動計算得到
ONBOOT=[yes|no]
引導時是否激活設備
USERCTL=[yes|no] 非ROOT用戶是否可以控制該設備
BOOTPROTO=[none|static|bootp|dhcp]
引導時不使用協議|靜態分配|BOOTP協議|dhcp協議
HWADDR=00:13:D3:27:9F:80 MAC地址
NAME=eth0 名稱
3、經過以上設置,正常情況下是可以成功的,如果仍有問題,在文件/etc/rc.d/rc.local最後加入ifup
eth0(/etc/rc.local腳本是在所有其它初始化腳本執行完畢後執行)。
4、重啟電腦,OK。
其它網路控制命令:
ifdown eth0、ifconfig eth0 down //關閉網路
ifup eth0、ifconfig eth0 up //開啟網路
-------------------------------------------------------
設置DNS 配置文件位置/etc/resolv.conf
-------------------------------------------------------
service network start //啟動網路服務
service network stop //停止網路服務
srvice network restart //重啟網路服務
service network status //查看網路服務狀態
⑤ ZYNQ+linux網口調試筆記(3)PL-ETH
在ZYNQ上使用gigE Vision協議的網路介面相機。
第一步:調通PS側網口GEM0(Xilinx BSP默認配好)。
第二步:調通PS側網口GEM1(見前一篇文檔:開發筆記(1))。
第三步:調通PL側網口(本文闡述)。
第四步:在PL側網口上驗證Jumbo Frame特性,並在應用層適配gigE Vision協議。
根據《xapp1082》可知,PL側的PHY支持1000Base-X和SGMII兩種配置,這兩種配置對應兩種不同的PHY引腳介面(連接到MAC)。而我們的hdf文件使用的是1000Base-X的配置。
關於網口的Linux驅動,我們在官網找到一份資料: Xilinx Wiki - Zynq PL Ethernet 。資料很長,我們只看與我們相關的2.4.1 PL Ethernet BSP installation for 1000Base-X」這一章節就可以了。
首先導入FPGA設計同事提供的hdf文件:
在彈出的圖形界面里,進入Subsystem AUTO Hardware Settings——Ethernet Settings——Primary Ethernet,確認可以看到PL側網路設備axi_ethernet_0,說明hdf文件里已包含了必要的網口硬體信息:
上圖中被選中的網口將成為Linux上的設備eth0。這里我們默認選擇ps7_ethernet_0,即使用GEM0作為首選網口。
啟用Xilinx AXI Ethernet驅動
進入Device Drivers -- Network device support – 選中Xilinx AXI Ethernet(以及Xilinx Ethernet GEM,這是PS側網口的驅動)
進入Networking support – 選中 Random ethaddr if unset
進入Device Drivers -- Network device support -- PHY Device support and infrastructure – 啟用Drivers for xilinx PHYs
進入~~~~Device Drivers -- DMA Engine Support -– 禁用~~~~Xilinx AXI DMAS Engine~~~ (對應的配置項名為 ~~ CONFIG_XILINX_DMA ~~~)
注意: Xilinx Wiki里對設備樹節點的引用有誤(&axi_ethernet),導致編譯報錯,應改為&axi_ethernet_0。
註:PL-ETH驅動所在路徑:<project>/build/tmp/work-shared/plnx_arm/kernel-source/drivers/net/ethernet/xilinx/xilinx_axienet_main.c和xilinx_axienet_mdio.c。對應的內核配置項為CONFIG_NET_VENDOR_XILINX和CONFIG_XILINX_AXI_EMAC。
啟用ethtool和tcpmp(調試用,非必須):
然後將生成的BOOT.BIN和image.ub拷貝到SD卡根目錄下,將SD卡插入板子上,上電運行。
上電後,使用ifconfig eth1查看網口信息,觀察MAC地址與設置的一致,且ifconfig eth1 192.168.1.11 up沒有報錯。
測試網路通路:ping PC是通的。說明網口工作正常。
Linux下eth1(即PL-ETH)的MAC地址有誤
問題描述:
開機列印:
注意:
MAC地址是錯的,驅動里解析出的是GEM0的MAC地址。
試驗發現,即使在system-user.dtsi里不寫local-mac-address,也照樣解析出的是GEM0的MAC。
而將system-user.dtsi里的local-mac-address改名為pl-mac-address,並將驅動里解析的字元串也對應更改為pl-mac-address,則可以正確解析出來:
Passing MAC address to kernel via Device Tree Blob and U-Boot:
http://zedboard.org/content/passing-mac-address-kernel-device-tree-blob
通過更改u-boot環境變數和設備樹,為每個板子設置一個獨特的MAC地址:
https://www.xilinx.com/support/answers/53476.html
U-Boot里的環境變數ethaddr會覆蓋掉設備樹里pl-eth的local-mac-addr欄位,從而影響Linux啟動後的網卡MAC地址;
但U-Boot里的環境變數ipaddr不會對Linux啟動後的配置產生任何影響。因為設備樹里根本就沒有關於IP地址的配置。
phy-mode怎麼會是sgmii?查了下官方的提供的BSP里,也是「sgmii」。說明這個沒問題。具體原因不清楚。
@TODO: 設備樹里的中斷號的順序如何影響功能?
為何讀出來的IRQ號不對呢?這是因為這里讀到的不是硬體的中斷號,而是經過系統映射之後的軟體IRQ number。兩者不具有線性關系。
關於中斷號的疑問:
Linux上的網口eth0、eth1的順序,似乎是按照phy地址從小到大來排布的。
Xilinx xapp1082-zynq-eth.pdf (v5.0) July 16, 2018
https://www.xilinx.com/support/documentation/application_notes/xapp1082-zynq-eth.pdf
Xilinx Wiki - Zynq PL Ethernet:
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841633/Zynq+PL+Ethernet
Xilinx Wiki - Linux Drivers:
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841873/Linux+Drivers
Xilinx Wiki - Linux Drivers - Macb Driver:
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841740/Macb+Driver
Xilinx Wiki - Zynq Ethernet Performance:
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841743/Zynq+Ethernet+Performance
查到關於Jumbo frame MTU的定義,當前值為9000,可否改大一些?
驅動源碼里關於jumbo frame的說明:
設置MTU為9000,發現ping包最大長度只能設為ping 192.168.1.10 -s 1472
https://lore.kernel.org/patchwork/patch/939535/
【完】
⑥ 以太幣挖礦,用什麼來挖
以太幣挖礦教程
1、在硬碟上新建文件夾,比C:Eth。之後所有挖礦軟體就存放在這里。
2、下載以下軟體
1)Geth——選擇Geth-Win下載然後解壓
2)Ethminer——下載解壓到同一個文件夾,重命名為「miner」
3)Ethereum Wallet(以太坊錢包)——下載Win以太坊錢包,解壓之後重命名「wallet」
安裝好所有軟體
3、打開命令提示符(同時點擊Win和R鍵或者點擊開始菜單然後輸入cmd)。命令提示符是命令行解析器,讓你在操作系統中執行命令輸入的軟體。
之後你就擁有以太坊錢包了。但是沒有餘額,所以接下來你需要建立ethminer。暫時可以最小化錢包了。
挖礦
⑦ 如何抓取linux系統的eth0網卡來自172.16.2.10的80埠的包
tcpmp -i eth0 -nn ' port 80 and host 172.16.2.10'
使用tcpmp指令來抓取包,後面接相應的參數即可。
⑧ linux下輸入ifconfig命令,沒有eth0,怎麼解決
重新打開eth0就行了
第一步:打開terminal,輸入cd /etc/sysconfig/network-scripts 進入目錄,輸入ifconfig -a命令,可神戚以看到eth0和lo。
⑨ linux下如何區分eth0,eth1,eth2,eth3
ethtool -p eth0
回車後與eth0 相對應的網卡介面旁邊的指示燈就會閃爍,這樣你就能很快確定eth0 網口的位置(按下Ctrl+C 結束命令,停止閃爍)
同樣確定eth1、eth2.。。。
⑩ 如何用linux建立eth1
cp ifcfg-eth0 ifcfg-eth1
然後 vi ifcfg-eth1
按照 裡面的 參數 設置 就可以
最簡單 方法 如果你有 安裝upset
用upset吧