V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  zone10  ›  全部回复第 1 页 / 共 5 页
回复总数  99
1  2  3  4  5  
2023-08-03 14:59:43 +08:00
回复了 fansfans 创建的主题 程序员 请教:在 Linux 中使用 gopacket 给本机发送 icmp 包无响应
@zone10 补充一下, windows ping 本机默认走的 loopback 地址, linux 默认走的以太网, linux ping 设置 -A 选项后走的 loopback 地址速度瞬间快了十倍
2023-08-03 14:44:22 +08:00
回复了 fansfans 创建的主题 程序员 请教:在 Linux 中使用 gopacket 给本机发送 icmp 包无响应
@fansfans 好吧, 没看清楚题意, 有两个问题, 第一, 本地主机不走以太网而是用回环地址 Lookback, 不过应该不是包无响应的原因. 如果你把 ping 设置的久一点然后通过抓包就能发现, ping 程序的进程 id 跟 icmp 包头的 id 值是一样的, 所以响应这个 ping 请求的应该就是当前这个 ping 进程自己, 而你的程序没有处理响应 icmp 包的逻辑. 给其他 IP 发正常是因为响应你 icmp 请求的逻辑在其他主机
2023-08-03 10:15:49 +08:00
回复了 fansfans 创建的主题 程序员 请教:在 Linux 中使用 gopacket 给本机发送 icmp 包无响应
是想学习 gopacket 还是想实现 icmp 功能, 如果是后者用 go 的标准库几行代码就搞定了, 没必要上 gopacket,
```go
package main

import "net"

func main() {
domain := "www.baidu.com"
raddr, err := net.ResolveIPAddr("ip", domain)
if err != nil {
panic(err)
}
conn, err := net.DialIP("ip4:icmp", nil, raddr)
if err != nil {
panic(err)
}
defer conn.Close()

buf := []byte{0x08, 0x00, 0xf7, 0xfe, 0x00, 0x01, 0x00, 0x00}
_, err = conn.Write(buf)
if err != nil {
panic(err)
}
}
```

如果是前者, 链路层的以太网帧构建出错, 源 MAC 是本机 MAC, 目的 MAC 是网关 MAC, 需要通过 ARP 协议获得, 或者通过 wireshark 抓包硬编码地址也行
2022-08-30 16:22:31 +08:00
回复了 lanlanye 创建的主题 Python 你们说 Python 这个是 Bug 还是 Feature?
算是设计失误, 就跟 Null 的设计失误一样, 反正我用过 Rust 受不了 Go 作为一门比较新的语言居然不保证空类型安全, 特别是结构体默认为 nil 太 tm 容易出错了
2022-07-13 09:38:06 +08:00
回复了 James369 创建的主题 程序员 一直有个疑问,软件开源出去,就不怕竞争对手抄走吗?
1. 开源也是有套路的, 你在官网下载到的编译后的 vscode 跟开源的 vscode 代码并不完全等同, 而且比较有竞争力的 remote 并不是开源的. 2. 微软主要不是靠卖 vscode 赚钱而是 azue. 国外开源也不是为了给你白嫖而是话语权, 不然开源就像无源之水不可能长久的
2022-07-07 09:41:10 +08:00
回复了 shigure00 创建的主题 程序员 想学一门新语言, go 和 Python 大家推荐哪个
精力够的话可以都学, 硬要选一门的话建议是 Python. 如果你不是已经有一门主语言的情况下毫无疑问选 Go, 考虑到你已经有 Java 了, Go 跟 Java 的领域可以说几乎重合, 学了对你用处不大, 除非你打算转云原生方面, 这方面 Java 可能比 Go 差了点. 或者你觉得 Java 太卷想弯道超车也可以选 Go, 我觉得是非常有前景的.
golang 有反射 reflect 这个库, 应该可以像 Python 那样根据字段名拿私有字段, 用偏移量拿说真的不是一个好习惯, 你这个例子前面只有一个字段问题还没那么大, 要是整多几个要字节对齐怎么办, 就算你全考虑到了知道怎么对齐拿到正确的字段, 这种根据编译器实现的编程方式都是坏习惯
2021-07-28 17:50:57 +08:00
回复了 beryl 创建的主题 程序员 刷题有点刷不下去了,请假刷题经验心得
我的经验是不要做题直接看题解,有些问题你不懂套路凭空解不亚于解未知难题。先定个小目标,看他个 500 题,但是不要复制代码, 看完题解自己实现,因为有很多隐藏的细节不自己实现很难发现, 比如你小于等于差个等号都不一样。然后要按题型刷不要顺序刷,相同的题型要有对比才容易掌握。事实上我刷了不到 200 题就对自己刷过的题型很自信了。对了, 每道题的时间复杂度和空间复杂度都要记住,最好能推理。然后我发现一位博主讲的挺不错的,推荐一下 https://labuladong.gitee.io/algo/
2021-07-28 17:36:17 +08:00
回复了 opengps 创建的主题 前端开发 后端如何学前端?不求精,求快就行
说真的,js 还好, 用 es6 没那么恶心,css 才难倒你,需要记的东西太多了,都是经验,我觉得学个那种原子化的 ui 框架好一点,几乎 0 css
2021-07-28 17:30:35 +08:00
回复了 MaMimi 创建的主题 职场话题 要不要进行年轻人的第一次裸辞
不要裸辞,可以效率减半一半时间用来刷题背八股文, 脸皮要厚, 都要走了怕什么,找到工作了再走, 不然裸辞焦虑死你
2021-07-23 10:05:54 +08:00
回复了 join 创建的主题 Windows 最近折腾 hyper-v 的一些吐槽
之前一直用的 VirtualBox, 用过 wsl2 后 VirtualBox 暂时可以抛了, 目前没遇到问题. Docker Desktop 也可以用 wsl2, 使用体验就是爽的批爆, 回不去了
2021-06-17 17:56:03 +08:00
回复了 einsdisp 创建的主题 程序员 Win10 的 WSLg 能否完美替代 Linux 下日常开发?
最好的 Linux: Docker + VS Code Remote Containers
次好的 Linux: Ubuntu Server + VS Code Remote SSH
2021-06-15 14:27:24 +08:00
回复了 DeaThNoTE 创建的主题 Python pip install 怎么都用不了
Ubuntu 20.04 预装 Python, 直接就可以用, 实在不行搞个虚拟机重装系统; 或者装个 Anaconda, Linux Windows 都能用. 新人切记转牛角尖, 没必要从一个错误的路径回溯问题, 直接重头开始, 直接消灭问题
《硬汉》由导演王晶监制,导演丁晟执导,由刘烨、黄秋生、尤勇、孙红雷等人联手主演的影片。讲述一个退伍海军“老三”的故事。
2021-06-03 09:49:57 +08:00
回复了 beryl 创建的主题 Kubernetes 是否有必要用 K8S
k8s 节省的是程序员成本, 你在心疼机器成本那就没必要
爬虫学点简单的确实有意思, 爬爬盗版小说, 小电影之类的. 如果是全职的话我是来劝退的, 一来容易入狱不说, 二来和反爬的不断内卷死磕, 相互加大对方的工作难度, 想想何必呢, 程序员何苦为难程序员
用 virtualenv, 把依赖下在 venv 目录里整个复制过去就行. 是不允许用 docker 还是不允许拉 docker 镜像, 如果是后者可以把 docker 镜像导出为压缩包再去内网安装, win7 能用 docker, 有个工具叫 DockerToolBox, 如果是 win10 能用 Hyper-V 就更方便了, Docker Desktop 了解一下
2021-05-19 09:52:42 +08:00
回复了 chaleaoch 创建的主题 Python 给同事讲 Python 的高级用法, 有没有提纲什么的...
大部分非 Python 程序员都是把 Python 当成跨平台的 shell 在用, 没必要给他们讲高级用法, 有那个精力还不如给他讲讲 awesome-python, 实现哪个功能要用哪个库, 面向 PyPI 和 Github 编程
2021-05-11 14:27:07 +08:00
回复了 TiggeYL 创建的主题 English 如何学习英语
下个百词斩, 上下班来回各 25 个, 每天就 50 个了, 一年算你 200 天都 1 万个了, 有 1 万个词汇文档随便看了。 不需要语法, 就是长句看不懂。 用划词软件一段一段翻译英文文档, 对照着看, 一两年后差不多也会了 ---- 来自一个没考过 4 级的程序员经验之谈
2021-05-06 14:26:18 +08:00
回复了 liuxing 创建的主题 Node.js JavaScript 中到底加不加分号?
能不加分号的语言加分号像个憨猪, 点名 JS, Go, Scala, 当然, 老大是从 Java 过来的憨猪硬让你加也没办法
1  2  3  4  5  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   968 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 34ms · UTC 20:51 · PVG 04:51 · LAX 12:51 · JFK 15:51
Developed with CodeLauncher
♥ Do have faith in what you're doing.