新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > net-snmp移植到ARM平臺

        net-snmp移植到ARM平臺

        作者: 時間:2016-11-09 來源:網絡 收藏
        主機環境

        Windows + vmware(redhat9.0)

        本文引用地址:http://www.104case.com/article/201611/317664.htm

        IP分配如下:

        ARM開發板:192.168.4.151

        Windows: 192.168.4.44

        Redhat9.0: 192.168.4.150

        搭建交叉編譯環境

        把交叉編譯器解壓到/opt/目錄下,然后在/etc/profile文件中添加

        環境變量,pathmunge /opt/hardhat/devkit/arm/xscale_be/bin.

        交叉編譯步驟

        ①. tar –zxvf net-snmp-5.3.2.tar.gz

        ②. cd net-snmp-5.3.2

        ③../configure --host=armv5teb-hardhat-linux //運行平臺

        --build=i686-linux //編譯平臺

        --with-cc=xscale_be-gcc //交叉編譯器

        --with-ar=xscale_be-ar //

        --prefix=/usr/local/net-snmp //安裝目錄

        --disable-shared //靜態編譯

        --with-endianness=little //指定小端

        --enable-mini-agent//最小的SNMPD

        --with-openssl=/opt/hardhat //openssl庫路徑

        /devkit/arm/xscale_be/target/usr

        ④. make (make LDFLAGS="-static",如果沒有指定disable-shared)

        ⑤. make install

        ⑥. cp EXAMPLE.conf /usr/local/net-snmp/share/snmp/snmpd.conf

        ⑦. 配置/usr/local/net-snmp/share/snmp/snmpd.conf文件

        ⑧.xscale_be-strip /usr/local/net-snmp/sbin/snmpd,壓縮snmpd.

        移植文件

        在移植以前首先要刪除AP上的/usr/sbin/snmpd和/etc/snmpd.conf.

        1./usr/local/net-snmp/sbin/目錄下snmpd進程

        2./usr/local/net-snmp/share/snmp/目錄下snmpd.conf ,mibs

        3./usr/local/net-snmp/bin目錄下net-snmp-config, snmpwalk, snmpget等

        備注:snmpd,net-snmp-config,snmkwalk,snmpget等工具在移植以前,要先用xscale_be-strip壓縮一下。然后snmpd放到AP的/usr/sbin中,

        Snmpd.conf放到Ap 的/etc中。其他按照上面目錄存放。AP上沒有就自動創建。

        在AP上運行snmpd

        #snmpd –c /etc/snmpd.conf

        備注:

        1.在AP上運行時會出現缺少libcrypto.so.0.9.6文件。在交叉編譯器中(/opt/hardhat/devkit/arm/xscale_be/target/usr/lib)能找到這個文件,然后put到AP的/lib/目錄下?;蛘?/p>

        創建軟連接ln –s /mnt/ramd/libcrypto.so.0.9.6 /lib/libcrypto.so.0.9.6。

        2.原來snmpd.conf在/usr/local/net-snmp/share/snmp/snmpd.conf中,傳到AP時放到/etc/目錄中,所以在運行時用參數C來指定最新目錄。

        3.當snmpd進程運行時會在/var/net-snmp目錄下創建一個snmpd.conf.

        原來沒有,Snmpd.conf文件中有engineboot和engineID。當用net-snmp-config創建v3用戶時,下面會自動添加

        createuser zhuangqian MD5 “19840318” DES,當然同時也會在/usr/local/net-snmp/share/snmp/snmpd/conf中添加rwuser zhuangqian.

        如何創建V3用戶

        方法一

        ①首先關閉snmpd進程

        ②net-snmp-config --create-snmpv3-user –a “19840318” zhuangqian

        執行上面操作之后,/var/net-snmp/snmpd.conf文件中增加一行

        createuser zhuangqian MD5 “19840318” DES

        /usr/local/net-snmp/share/snmp/snmpd.conf中增加一行

        rwuser zhuangqian

        ③snmpd 啟動進程

        ④snmpget –v 3 –u zhuangqian –l authNoPriv –a MD5 –A “19840318” localhost sysUpTime.0或者

        snmpget -v 3 -u zhuangqian –l authPriv –a MD5

        -A “19840318” –x DES – X “19840318” localhost sysUpTime.0

        方法二

        # net-snmp-config --create-snmpv3-user ↙

        # 輸入用戶名(zhuangqian)↙

        # 輸入authentication pass-phrase(驗證)如19840318長度不小于8

        # 輸入encryption pass-phrase(加密)如19840318,直接回車則跟上面一樣。

        測試:

        Snmpget –v 3 –l authPriv –u zhuangqian –A “19840318” –X “19840318” localhost sysUpTime.0

        注意v3中authprotocal MD5 SHA Privprotocal DES AES

        客戶端能ping通運行snmpd進程的設備,但取不到值,可能是客戶端防火墻問題,取消客戶端防火墻試試。

        測試V2

        snmpwalk –v 2c -c public 192.168.4.151 if

        snmpget –v 2c –c public 192.168.4.151 system.sysName.0



        關鍵詞: net-snmp移植ARM平

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 偏关县| 永丰县| 会泽县| 兴隆县| 承德市| 泰安市| 乐都县| 崇文区| 宁远县| 博白县| 江油市| 育儿| 房产| 墨江| 富裕县| 四平市| 海安县| 古浪县| 泽普县| 河池市| 乐安县| 绥化市| 嵊泗县| 康乐县| 赤壁市| 武川县| 灵武市| 罗源县| 曲靖市| 高淳县| 简阳市| 乐亭县| 江西省| 汉源县| 留坝县| 凤山市| 新源县| 酉阳| 呼图壁县| 抚远县| 大连市|