Mac OS X上使用Wireshark抓包(http://blog.csdn.net/phunxm/article/details/38590561)

Mac下安装Wireshark

/Applications/Wireshark.app/Contents/MacOS/Wireshark

root# export DISPLAY=:0.0

系统:OS X 10.9 Mavericks

Wireshark安装包:Wireshark 1.10.2 Intel 64_0.dmg
 
首先安装X11 (即XQuartz);
安装Wireshark.dmg;
 
报错:

The domain/default pair of (kCFPreferencesAnyApplication, AppleAquaColorVariant) does not exist

2013-10-28 23:04:03.650 defaults[4205:507]

The domain/default pair of (kCFPreferencesAnyApplication, AppleHighlightColor) does not exist

(process:4187): Gtk-WARNING **: Locale not supported by C library.

Using the fallback 'C' locale.

(wireshark-bin:4187): Gtk-WARNING **: cannot open display:

 
(注意以上最后一个提示)
 
切换到root账户;
执行以下命令:

root# export DISPLAY=:0.0

root# xhost +

root# xhost +localhost

root# xhost + localhost

root# hostname

shuiyouren.local

root# xhost + shuiyouren.local

root# export XAUTHORITY=/Users/[shuiyouren(你的用户主目录)]/.Xauthority

启动X11程序,然后以root账户运行Wireshark:

root# /Applications/Wireshark.app/Contents/MacOS/Wireshark

 
到此将运行Wireshark,如果失败,退出重新运行。

本文相关错误信息:(wireshark-bin:1336): Gtk-WARNING **: cannot open display: :0.0
将以上操作添加到profile文件方便以后运行。
注意点:一定要先运行X11,然后再通过命令行运行Wireshark!
建议:chmod g+rw /dev/bpf* (这样可以以普通用户运行,至于是否需要相关参数的配置自己再琢磨)
网上其它的方法尝试未果,原因不详,主要还是理解不深O(∩_∩)O哈!
 

Wireshark设置interface 时提示“There are no interfaces on which a capture can be done ”

 (http://blog.163.com/likaifeng@126/blog/static/32097310201271451655190/)
     今天在电脑上安装了WIRESHARK软件,在设置interface 时提示"There are no interfaces on which a capture can be done"  提示没有任何一个网络接口准备好。此提示明显是不对的, 我的网卡明明可以正常上网,网络接口怎么会没有准备好呢?  想着应该是和linux下的普通用户权限有关系。上网google了一下,找到了解决问题的方法, 现在整理下来, 以备后用。

 
  思路;即然问题与权限有关系 , 那么解决方法无法有两点, 一个就是直接使用root登陆,这样就可以有足够的权限运行任意程序了, 但显然是不安全的,另外一种方法是通过suid guid等办法给予普通用户执行wireshark的权限。这样相对来说比安全。
 
  第一种方法:使用root用户登陆
       xiaoshancun@xiaoshancun-VM500:~$ sudo wireshark 
  第二种方法: 通过guid形式使当前普通用户可以运行此程序。

root@xiaoshancun-VM500:~# groupadd  -g 130  wireshark

       #  新建一个名为wireshark的用户组, 130 是GID,此数字不是固定不变的, 请先查看/etc/group 文件查看最大的GID是多少,然后加1即可。
      root@xiaoshancun-VM500:~# usermod  -a -G wireshark  xiaoshancun  
      #  将当前用户 xiaoshancun 添加到wireshark组中。 使之成为新的组员。
     root@xiaoshancun-VM500:~# chgrp  wireshark   /usr/bin/dumpcap
     #  将/usr/bin/dumpcap  程序的属组更改为wireshark  。
      root@xiaoshancun-VM500:~# chmod  4750 /usr/bin/dumpcap
     修改 /usr/bin/dumpcap  的权限 更改为  4750  添加suid 权限 。 
      root@xiaoshancun-VM500:~# setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap 
      
     修改完成还不能直接使用,需要重新登陆一下才可以。需你不想重新登陆可以使用如下命令。
     root@xiaoshancun-VM500:~#  newgrp wireshark
   完屔后就可以使用普通用户执行wireshark 程序了。 
   

Mac下安装Wireshark,双击闪退的更多相关文章

  1. 关于tomcat下startup.bat双击闪退的问题

    背景:之前做单点登录,复制了几个tomcat,改了各自端口,当做不同服务器用. 今天无意间随便点击了一个tomcat下的startup.bat批处理文件,结果出来控制台,没出几行信息就闪退了.点击其他 ...

  2. MAC下安装与配置MySQL

    MAC下安装与配置MySQL   MAC下安装与配置MySQL 一 下载MySQL 访问MySQL的官网http://www.mysql.com/downloads/ 然后在页面中会看到“MySQL ...

  3. Mac下安装UPnP Inspector

    由于工作中需要用到UPnP Inspector这个工具,而这个工具在windows下安装非常简单,在Mac下安装却很麻烦,在此记录安装流程. 这个工具依赖于两个其他的库:Coherence(一个DLN ...

  4. 在mac下安装jdk1.7(转)

    转自:http://vela.diandian.com/post/2012-01-06/15379924 最近呢,想玩玩jdk1.7,不过mac平台下的jvm一直都是Apple自己改的,所有有些麻烦. ...

  5. 配置apache,及mac下安装mysql

    先打开apache,在浏览器上输入  localhost     回车后会如果屏幕上显示:It works! 如下图: 这说明你的apache已开启 在window下配置apache: 1.找到apa ...

  6. mac下安装git,并将本地的项目上传到github

    mac下安装git 安装过程: 1.下载Git installer http://git-scm.com/downloads 2.下载之后打开,双击.pkg安装 3.打开终端,使用git --vers ...

  7. Mac 下安装运行Rocket.chat

    最近花了一周的时间,复习了HTML.CSS.原生JS,并学习了Node.js.CoffeeScript.js.MongoDB,入了下门. 因为准备在Rocket.chat 上做二次开发,所以先下载和安 ...

  8. Mac 下安装安卓 apk 文件

    Mac 下安装安卓 apk 文件 在windows上有比较多的第三方软件可以使用,双击就可以将apk文件安装到手机上. 在Mac 上要实现这样还是挺难得,目前还没有像Windows那样的第三方软件可以 ...

  9. centos下安装wireshark 抓包

    centos下安装wireshark相当简单.两条命令就够了.这里.主要是记录写使用方面的东西 安装:1.yum install wireshark.注意这样并无法使用wireshark命令和图形界面 ...

随机推荐

  1. Fisher-Yates 乱序算法

    这两篇博客[1][2]的模式是我心仪的一种科技博客的方式,提供源代码,显示运行图形结果,通俗地介绍理论原理. 直接把结论摘录下来吧. 随机算法如果写成如下形式 randomIndex = random ...

  2. 基于TCP/IP的长连接和短连接

    1. TCP连接 当网络通信时采用TCP协议时,在真正的读写操作之前,server与client之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接时它们可以释放这个连接,连接的建立是需要三次 ...

  3. IOS移动设备处理器指令集 armv6、armv7、armv7s及arm64

    Arm处理器,因为其低功耗和小尺寸而闻名,几乎所有的手机处理器都基于arm,其在嵌入式系统中的应用非常广泛,它的性能在同等功耗产品中也很出色. Armv6.armv7.armv7s.arm64都是ar ...

  4. linux下使用sftp

    何为sftp sftp是Secure File Transfer Protocol的缩写,安全文件传送协议.可以为传输文件提供一种安全的加密方法. 连接 linux下直接在终端中输入: sftp us ...

  5. php截取字符串

    1.substr(源字符串,其实位置[,长度])-截取字符串返回部分字符串 <?php $str ="phpddt.com"; echo substr($str, 2); / ...

  6. ios每日一发--Leanclude数据云存储以及登录 注册账户

    利用LeanCloud来实现注册账号,存储账号以及,登录时查询账号是否正确.集成方式很简单可以看这里的官方文档.地址是这里: https://leancloud.cn/docs/ 在这里创建应用,以及 ...

  7. AndroidStudio2.0开发环境搭建

    实验内容 下载安装Android Studio 配置使用环境 实验要求 下载安装Android Studio 基本环境配置 实验步骤 1.首先从安卓开发者网站下载最新的Android Studio h ...

  8. Java Servlet(四):Servlet接口service工作(ServletRequest,ServletResponse对象)(jdk7+tomcat7+eclipse)

    本篇将会记录,Servlet接收客户端传递来的参数信息,并返回信息使用的对象,及这些对象的函数相关用法. 还是在java ee工程中进行操作,在WebContent目录下创建一个login.jsp文件 ...

  9. Eclipse in Ubuntu16.04LTS Final Beta

    #2016.03.30 在虚拟机Ubuntu16.04LTS上,用Eclipse编写运行Java,就目前而言,实在不是明智之举.卡顿极其厉害,还是在物理机上运行吧.那么继续Ubuntu的探索历程. 用 ...

  10. Jenkins入门系列之——01第一章 Jenkins是什么?

    第一章 Jenkins是什么? Jenkins 是一个可扩展的持续集成引擎. 主要用于: l 持续.自动地构建/测试软件项目. l 监控一些定时执行的任务. Jenkins拥有的特性包括: l 易于安 ...