V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
mcone
V2EX  ›  Linux

有什么方法可以在内网某台电脑开机后,让我知道他 dhcp 得到的 ip 地址?

  •  
  •   mcone · 2014-11-27 19:38:00 +08:00 · 4907 次点击
    这是一个创建于 3647 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我主机和那台电脑在同一个子网内。DHCP服务器的查看权限拿不到,一直抓包又不太现实……

    之前借助ipmsg完成了这个需求,很好用,但是只能在有KDE界面下貌似,现在我又要多监控一台无图形界面的server,这个方法就不行了;

    之前也用过每次开机用脚本读取ifconfig内容,向我自己发邮件的方法,现在觉得那些机器每次开机都让我收到一封邮件太麻烦了,并且由于出网带宽问题,邮件延迟有些大。


    提前谢过各位指教 =。=
    第 1 条附言  ·  2014-11-28 18:47:32 +08:00
    感谢楼下各位的推荐,今天我把各位的方法都试了一下,最终使用了2个方法,补充在这里,当是暂时结了吧,方便其他人:

    1. @dorentus 推荐的avahi,这货真的是太方便了,相见恨晚,非常感谢

    2. @ryd994 和 @xenme 推荐的ddns,我之前使用huashengke,现在发现简直烂的一B,完全是在跟ddns抹黑。
    现在我用的namecheap的ddns,刚好我有个域名在他家,直接用官网的配置教程,配置一下ddclient就好了,很方便
    [namecheap的官方无脑教程](https://www.namecheap.com/support/knowledgebase/article.aspx/36/11/what-do-i-start-using-dynamic-dns)
    [namecheap的官方无脑教程2](https://www.namecheap.com/support/knowledgebase/article.aspx/583/11)

    感谢各位~~
    12 条回复    2014-11-28 10:48:22 +08:00
    ryd994
        1
    ryd994  
       2014-11-27 20:08:24 +08:00   ❤️ 1
    ddns,
    ddclient配置里 use=if,这是最简单的办法
    如果你有dhcp服务器的控制权的话,也可以配置根据mac固定分配
    dorentus
        2
    dorentus  
       2014-11-27 20:09:28 +08:00   ❤️ 2
    如果你的这些机器里面都没有 Windows 的话,那么简单,在 Linux 的主机上都装上 avahi-daemon,然后互相之间通过域名 主机名.local 就能访问了。OS X 和 iOS 的机器什么都不用装,之间支持。

    如果有 Windows,也想用上面的方案的话,可以找下 Apple 的 Bonjour 装上应该就可以了(但是很难找),或者直接装一个完整的 iTunes……

    ----
    其它类似的 DNS Zeroconf 或者 Service Discovery 的方案也存在不少,但是我还没找到像 avahi 这种直接装了不用配置就可以用的。
    xenme
        3
    xenme  
       2014-11-27 20:11:22 +08:00
    @ryd994 自己撸一个DDNS类似的就好了。
    开机一个GET,服务器记录。
    你要查询的时候,GET网址,返回最后一条记录就好了
    lisaac
        4
    lisaac  
       2014-11-27 20:30:56 +08:00
    arping
    ryd994
        5
    ryd994  
       2014-11-27 21:36:11 +08:00 via Android
    @xenme 要简单搭个http然后每天翻log就行
    但是不要重复造轮子啊,注册一个ddns的账号然后很多地方多少都用得到,ddclient也是造的很好的轮子。利用DNS的话,可以直接访问,也更可维护
    mcone
        6
    mcone  
    OP
       2014-11-27 21:40:19 +08:00
    @ryd994 @xenme 我试试ddns 多谢

    @dorentus 除了我用的主机,其他大部分是linux的,不排除将来还会有windows受控机加进来(话说真是windows加进来貌似就好办了,有个东西叫网上邻居=。=)我去看看avahi,感谢回复~

    @lisaac 之前没见过,我去查查 thx
    ryd994
        7
    ryd994  
       2014-11-27 21:42:58 +08:00 via Android   ❤️ 1
    @mcone arping是ping mac地址
    mcone
        8
    mcone  
    OP
       2014-11-27 22:05:52 +08:00
    @ryd994 嗯 刚刚查了一下 好像是通过arp包来判断某个ip对应的mac地址,虽然跟我想要的思路有些相反,倒是貌似可以通过arping整个网段……唔
    Tink
        9
    Tink  
       2014-11-27 22:14:14 +08:00   ❤️ 2
    ping 192.168.1.255
    mengzhuo
        10
    mengzhuo  
       2014-11-28 07:03:13 +08:00 via iPhone
    我记得DNS 广播包里有有相关参数
    mcone
        11
    mcone  
    OP
       2014-11-28 10:38:51 +08:00
    @mengzhuo 嗯 多谢 是有个GARP广播包,但是我在它开机的时候,不一定能保证在线,但是又不想一直抓广播包……
    mcone
        12
    mcone  
    OP
       2014-11-28 10:48:22 +08:00
    @Tink 多谢,但是有的机器默认是不响应广播包的,另外/24网段内ip数基本能到200,这样子速度有些慢,还是谢谢了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1004 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:07 · PVG 06:07 · LAX 14:07 · JFK 17:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.