<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    輕松

    記述我學習java的里程

    常用鏈接

    統計

    積分與排名

    友情鏈接

    最新評論

    一種折中的取得遠程主機MAC地址的方法

    最近在做老系統的CS到BS的改造。碰到一個需要獲取指定IP主機MAC地址的問題。實在沒有想出什么好辦法,只能通過DOS命令折中一下。壞處就是不能跨平臺了,哪位大俠知道怎么做純java的實現?一定指點我一下。
    package com.dayang.utils;

    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.io.LineNumberReader;

    /**
     * 網絡工具
     *
     * @author relax
     */
    public class NetworkUtil {

     /**
      * 根據指定IP獲取MAC地址
      * @param ip
      * @return
      */
     public static String getMACAddress(String ip) {
      String str;
      String macAddress = null;
      try {
       Process p = Runtime.getRuntime().exec("nbtstat -a " + ip);//執行DOS命令
       InputStreamReader ir = new InputStreamReader(p.getInputStream());//獲取返回結果的流
       LineNumberReader input = new LineNumberReader(ir);
       //查找Mac地址
       for (int i = 1; i < 100; i++) {
        str = input.readLine();
        if (str != null) {
         if (str.contains("MAC Address")) {
          macAddress = str.substring(str.indexOf("= ")+2, str.length()).replace("-", "");
          break;
         }
        }
       }
       ir.close();
      } catch (IOException e) {
       e.printStackTrace();
      }
      return macAddress;
     }

     public static void main(String args[]) {
      System.err.println(getMACAddress("192.168.0.151"));
     }
    }

    posted on 2009-08-31 15:30 輕松 閱讀(2465) 評論(7)  編輯  收藏 所屬分類: 其他文章

    評論

    # re: 一種折中的取得遠程主機MAC地址的方法 2009-09-01 09:49 lkj107

    如果對方能夠有防火墻,則得不到MAC地址  回復  更多評論   

    # re: 一種折中的取得遠程主機MAC地址的方法 2009-09-01 11:07 隔葉黃鶯

    還有不光程序自身不能跨平臺,而且對方機器是非 Windows 平臺也獲取不到,再就跨路由通過 NAT 的應該也不行。  回復  更多評論   

    # re: 一種折中的取得遠程主機MAC地址的方法 2009-09-01 11:37 輕松

    各位不要光提毛病有沒有什么好的解決方案,給分享一下。  回復  更多評論   

    # re: 一種折中的取得遠程主機MAC地址的方法 2009-09-02 10:30 會飛的豬

    不了解你的程序結構,要是可以的話,考慮一下服務器端主動向客戶端詢問其MAC地址,讓其給返回的方式呢?服務器用這種方式去獲取的話,那得寫出多個class文件,分別實現各個操作系統的,之后還要檢測操作系統是哪類,根據其去調用相應的實體類才能做到通用,比較麻煩。(如果是B/S的話可以考慮嵌入一個不可見的applet來實現)  回復  更多評論   

    # re: 一種折中的取得遠程主機MAC地址的方法 2009-09-02 11:47 輕松

    客戶機現在主要就是windows操作系統,按原CS程序的做法就是服務器直接獲取的。  回復  更多評論   

    # re: 一種折中的取得遠程主機MAC地址的方法 2009-09-05 09:33 凌晨風

    獲取遠程主機有兩種思路:
    1. 發送命令模式
    2. UDP方式

    但是B/S模式一般需要跨平臺,當然網上有一種使用js調用動態庫實現,但是插件提示讓客戶很不滿意,我的做法是applet實現  回復  更多評論   

    # re: 一種折中的取得遠程主機MAC地址的方法[未登錄] 2009-09-07 09:32 Diablo.Wu

    寫個applet,如果客戶機只是windows+ie,那就把你以前cs的東西封個active不就得了。  回復  更多評論   

    主站蜘蛛池模板: 四虎影视永久免费观看| 3d成人免费动漫在线观看| 夭天干天天做天天免费看| 久久久亚洲精品视频| a级毛片毛片免费观看永久| 亚洲AV无码一区二区三区人 | 猫咪www免费人成网站| 又爽又黄无遮挡高清免费视频| 亚洲欧美国产欧美色欲| 国产男女猛烈无遮挡免费视频 | 久久亚洲精品成人av无码网站| 亚洲视频在线观看2018| 成人免费毛片内射美女-百度| 亚洲国产精品国产自在在线| 国产成人高清亚洲一区久久| 91免费在线播放| av在线亚洲欧洲日产一区二区| 九九久久国产精品免费热6| 国产亚洲一区区二区在线| 亚洲AV无码国产精品色| 在线播放免费人成视频在线观看| 亚洲中文无码永久免费| 免费一级特黄特色大片在线观看| 一区在线免费观看| 亚洲国产精品不卡在线电影| 免费成人福利视频| 精品国产日韩亚洲一区91| 国产亚洲AV手机在线观看| 免费不卡在线观看AV| 亚洲 暴爽 AV人人爽日日碰| 日本特黄特色免费大片| 国产免费福利体检区久久| 国产男女猛烈无遮挡免费网站| 亚洲精品偷拍视频免费观看| 91嫩草私人成人亚洲影院| 天天干在线免费视频| 日韩a毛片免费观看| 久久亚洲AV无码精品色午夜 | 亚洲成?v人片天堂网无码| 亚洲免费人成在线视频观看| 亚洲无吗在线视频|