<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 輕松 閱讀(2456) 評論(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不就得了。  回復  更多評論   

    主站蜘蛛池模板: 精品久久久久久亚洲精品| 亚洲网站在线免费观看| 亚洲一区二区三区成人网站| 亚洲一区二区三区自拍公司| 在线jyzzjyzz免费视频| h视频在线观看免费完整版| 成在人线av无码免费高潮水| 亚洲AV女人18毛片水真多| 亚洲制服丝袜一区二区三区| 亚洲va中文字幕无码久久| 亚洲中文字幕无码爆乳av中文| 国产免费久久精品久久久| 99精品全国免费观看视频| 日本黄网站动漫视频免费| 日本在线看片免费人成视频1000 | 一级毛片免费毛片一级毛片免费 | 国产黄色片在线免费观看| 99re热免费精品视频观看 | 久久精品国产亚洲av成人| 国产亚洲精品影视在线产品| 亚洲av手机在线观看| 精品国产一区二区三区免费看| 国产日本一线在线观看免费| 永久免费视频网站在线观看| 在线免费中文字幕| 无码国产精品一区二区免费式芒果| 精品一区二区三区高清免费观看| 五月天婷婷免费视频| 成人久久久观看免费毛片| 一级毛片a女人刺激视频免费| 美女视频黄频a免费观看| 黄色网址大全免费| 色吊丝性永久免费看码 | 亚洲无线观看国产精品| 亚洲一区爱区精品无码| 国产亚洲一区二区三区在线| 日韩亚洲欧洲在线com91tv| 亚洲国产a∨无码中文777| 亚洲午夜久久久精品影院| 亚洲欧洲日产国码在线观看| 亚洲免费网站在线观看|