ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗An open-source network simulator for learning, which runs entirely in your browser. You build a topology by dragging in routers, switches and PCs. You configure them from a command line that works the way real network gear does. Then you switch to Simulation mode and follow every frame hop by hop. Each device explains what it decided to do with the packet, and why.
There's no install, no account and no server. Open index.html through any static web server, or open the single-file build directly from disk.
| Area | Supported |
|---|---|
| Devices | Router (3 × Gigabit), switch (24 × Fast Ethernet + 2 × Gigabit), hub, PC, laptop, server |
| Layer 2 | MAC learning and flooding, VLANs, access and 802.1Q trunk ports, native VLAN, allowed-VLAN lists, spanning tree (root election, root/designated/blocked ports), switch management SVI, port security (switchport port-security with maximum, sticky and static addresses, shutdown/restrict/protect violations, err-disabled ports) |
| Layer 3 | ARP (with proxy ARP on routers), IPv4 forwarding with TTL, longest-prefix match, connected/local/static routes, default and floating static routes (administrative distance), router-on-a-stick sub-interfaces, RIP version 2 with split horizon and triggered updates, single-area OSPF (hellos, DR/BDR election, LSA flooding, shortest-path routes with bandwidth-based costs) |
| Services | DHCP server (router pools or server GUI), DHCP relay (ip helper-address), DNS server, simple web server and browser, Telnet to routers and switches (line vty 0 4, password, login, transport input) |
| Security | Numbered standard (1–99) and extended (100–199) access lists, named lists with ip access-list standard|extended NAME, sequence numbers (insert a line with 15 permit …, remove one with no 15, ip access-list resequence), remarks, ip access-group in/out, implicit deny, hit counters |
| NAT | NAT overload (PAT) with ip nat inside/outside and ip nat inside source list <acl> interface <if> overload; TCP/UDP ports and ICMP identifiers, idle timeouts, ICMP errors translated back so traceroute works; static NAT with ip nat inside source static <inside> <outside>, including ARP replies for the public address |
| Router/switch CLI | User/privileged/config modes, unique-prefix abbreviations (sh ip int br), ? help, Tab completion, history, do, interface range, show running-config, show ip route, show vlan brief, show interfaces trunk, show spanning-tree, show mac address-table, show cdp neighbors, show ip dhcp binding, show access-lists, show ip nat translations, show ip nat statistics, show ip protocols, show ip ospf neighbor, show ip ospf database, show ip ospf interface brief, show interfaces with packet and drop counters, clear counters, show users, copy run start, reload, ping (with repeat, size, source, timeout and df-bit, or the extended ping questions), traceroute and more |
| PC command prompt | ipconfig [/all /release /renew], ping [-n -l -f -i -w], tracert, telnet <host> [port] (a remote router or switch CLI in the same window), arp -a/-d, nslookup, route print |
| Learning | Simulation mode with step/play, protocol filters, animated envelopes, a per-hop packet inspector (Ethernet, 802.1Q, ARP, IPv4, ICMP, UDP, TCP, DHCP, DNS, RIP, OSPF, HTTP, Telnet), and thirteen guided labs with automatic checks |
| Files | Autosave in the browser, plus save/open topologies as .onsim.json |
Each lab builds a starting network, explains the goal and has a Check my work button. The checks run in a private copy of your network, so they never disturb what you're doing.
npm start # serves the folder on http://localhost:8080
npm test # engine, CLI and lab tests (Node 20+)
npm run build # dist/opennetsim.html, a single self-contained file
npm start and the build need Node.js. To run without any tooling, use any static server, for example python3 -m http.server, and open index.html. ES modules don't load from file://, so use the built single file if you want to double-click it.
The project uses plain JavaScript modules, with no framework and no runtime dependencies. The simulation engine doesn't touch the DOM, so it runs the same in Node (tests) and in the browser.
src/engine/ network.js discrete-event clock, cables, frame delivery, event recording
l3.js shared IPv4 stack: ARP, ICMP, routing table, ping/traceroute
host.js PC / laptop / server (+ DHCP client, DNS, HTTP) and hub
switch.js MAC table, VLANs, trunks, SVI stp.js spanning tree
router.js sub-interfaces, DHCP server/relay rip.js RIPv2 acl.js ACLs
nat.js static NAT and NAT overload (PAT)
portsec.js switch port security and err-disabled ports
telnet.js Telnet over a simplified TCP: vty lines and the PC client
ospf.js OSPF hellos, DR/BDR election, LSA flooding, SPF routes
dhcp.js DHCP server and client state machines
factory.js device catalogue, save/load
src/cli/ parser.js IOS-style grammar: prefixes, ambiguity, '?' help, Tab
ios.js router/switch commands and show output
hostcmd.js PC command prompt
src/ui/ app.js, canvas.js, devicewin.js, terminal.js, labs.js, icons.js, styles.css
tests/ node:test suites (engine scenarios, CLI sessions, every lab solved end to end)
There's a longer walkthrough in docs/ARCHITECTURE.md.
See CONTRIBUTING.md. Good first issues include more show commands, IPv6, a wireless access point, and more labs.
OpenNetSim is an independent project. It is not affiliated with or endorsed by Cisco Systems. "Cisco", "IOS" and "Packet Tracer" are trademarks of their owners. No code, images, icons, file formats or text were taken from any proprietary simulator.
The behaviour is implemented from public protocol standards (IEEE 802.3, 802.1Q and 802.1D; RFC 791, 792, 826, 2131 and 2453) and widely published command-line conventions. All device artwork is original.