adnetwork.html 46 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332
  1. <!doctype html>
  2. <html lang="en" class="no-js">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1">
  6. <meta name="description" content="ESP8266/ESP32 WLAN configuration at run time with web interface">
  7. <link rel="canonical" href="https://Hieromon.github.io/AutoConnect/adnetwork.html">
  8. <meta name="author" content="Hieromon Ikasamo">
  9. <link rel="shortcut icon" href="assets/images/favicon.png">
  10. <meta name="generator" content="mkdocs-1.1.2, mkdocs-material-6.1.6">
  11. <title>Settings and controls for network and WiFi - AutoConnect for ESP8266/ESP32</title>
  12. <link rel="stylesheet" href="assets/stylesheets/main.6910b76c.min.css">
  13. <link rel="stylesheet" href="assets/stylesheets/palette.196e0c26.min.css">
  14. <meta name="theme-color" content="#4051b5">
  15. <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
  16. <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700%7CRoboto+Mono&display=fallback">
  17. <style>body,input{font-family:"Roboto",-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono",SFMono-Regular,Consolas,Menlo,monospace}</style>
  18. <link rel="stylesheet" href="css/paragraph.css">
  19. <link rel="stylesheet" href="css/extra.css">
  20. <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.3/css/all.css">
  21. <script>window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new Date,ga("create","UA-116150854-1","auto"),ga("set","anonymizeIp",!0),ga("send","pageview"),document.addEventListener("DOMContentLoaded",function(){document.forms.search&&document.forms.search.query.addEventListener("blur",function(){if(this.value){var e=document.location.pathname;ga("send","pageview",e+"?q="+this.value)}})}),document.addEventListener("DOMContentSwitch",function(){ga("send","pageview",document.location.pathname)})</script>
  22. <script async src="https://www.google-analytics.com/analytics.js"></script>
  23. </head>
  24. <body dir="ltr" data-md-color-scheme="" data-md-color-primary="indigo" data-md-color-accent="indigo">
  25. <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
  26. <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
  27. <label class="md-overlay" for="__drawer"></label>
  28. <div data-md-component="skip">
  29. <a href="#404-handler" class="md-skip">
  30. Skip to content
  31. </a>
  32. </div>
  33. <div data-md-component="announce">
  34. </div>
  35. <header class="md-header" data-md-component="header">
  36. <nav class="md-header-nav md-grid" aria-label="Header">
  37. <a href="https://Hieromon.github.io/AutoConnect/" title="AutoConnect for ESP8266/ESP32" class="md-header-nav__button md-logo" aria-label="AutoConnect for ESP8266/ESP32">
  38. <img src="images/arduino-logo.svg" alt="logo">
  39. </a>
  40. <label class="md-header-nav__button md-icon" for="__drawer">
  41. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg>
  42. </label>
  43. <div class="md-header-nav__title" data-md-component="header-title">
  44. <div class="md-header-nav__ellipsis">
  45. <span class="md-header-nav__topic md-ellipsis">
  46. AutoConnect for ESP8266/ESP32
  47. </span>
  48. <span class="md-header-nav__topic md-ellipsis">
  49. Settings and controls for network and WiFi
  50. </span>
  51. </div>
  52. </div>
  53. <label class="md-header-nav__button md-icon" for="__search">
  54. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
  55. </label>
  56. <div class="md-search" data-md-component="search" role="dialog">
  57. <label class="md-search__overlay" for="__search"></label>
  58. <div class="md-search__inner" role="search">
  59. <form class="md-search__form" name="search">
  60. <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" data-md-state="active" required>
  61. <label class="md-search__icon md-icon" for="__search">
  62. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
  63. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
  64. </label>
  65. <button type="reset" class="md-search__icon md-icon" aria-label="Clear" data-md-component="search-reset" tabindex="-1">
  66. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg>
  67. </button>
  68. </form>
  69. <div class="md-search__output">
  70. <div class="md-search__scrollwrap" data-md-scrollfix>
  71. <div class="md-search-result" data-md-component="search-result">
  72. <div class="md-search-result__meta">
  73. Initializing search
  74. </div>
  75. <ol class="md-search-result__list"></ol>
  76. </div>
  77. </div>
  78. </div>
  79. </div>
  80. </div>
  81. <div class="md-header-nav__source">
  82. <a href="https://github.com/Hieromon/AutoConnect" title="Go to repository" class="md-source">
  83. <div class="md-source__icon md-icon">
  84. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M439.55 236.05L244 40.45a28.87 28.87 0 00-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 01-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 000 40.81l195.61 195.6a28.86 28.86 0 0040.8 0l194.69-194.69a28.86 28.86 0 000-40.81z"/></svg>
  85. </div>
  86. <div class="md-source__repository">
  87. Hieromon/AutoConnect
  88. </div>
  89. </a>
  90. </div>
  91. </nav>
  92. </header>
  93. <div class="md-container" data-md-component="container">
  94. <main class="md-main" data-md-component="main">
  95. <div class="md-main__inner md-grid">
  96. <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
  97. <div class="md-sidebar__scrollwrap">
  98. <div class="md-sidebar__inner">
  99. <nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
  100. <label class="md-nav__title" for="__drawer">
  101. <a href="https://Hieromon.github.io/AutoConnect/" title="AutoConnect for ESP8266/ESP32" class="md-nav__button md-logo" aria-label="AutoConnect for ESP8266/ESP32">
  102. <img src="images/arduino-logo.svg" alt="logo">
  103. </a>
  104. AutoConnect for ESP8266/ESP32
  105. </label>
  106. <div class="md-nav__source">
  107. <a href="https://github.com/Hieromon/AutoConnect" title="Go to repository" class="md-source">
  108. <div class="md-source__icon md-icon">
  109. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M439.55 236.05L244 40.45a28.87 28.87 0 00-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 01-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 000 40.81l195.61 195.6a28.86 28.86 0 0040.8 0l194.69-194.69a28.86 28.86 0 000-40.81z"/></svg>
  110. </div>
  111. <div class="md-source__repository">
  112. Hieromon/AutoConnect
  113. </div>
  114. </a>
  115. </div>
  116. <ul class="md-nav__list" data-md-scrollfix>
  117. <li class="md-nav__item">
  118. <a href="index.html" class="md-nav__link">
  119. Overview
  120. </a>
  121. </li>
  122. <li class="md-nav__item">
  123. <a href="gettingstarted.html" class="md-nav__link">
  124. Getting started
  125. </a>
  126. </li>
  127. <li class="md-nav__item">
  128. <a href="menu.html" class="md-nav__link">
  129. AutoConnect menu
  130. </a>
  131. </li>
  132. <li class="md-nav__item">
  133. <a href="basicusage.html" class="md-nav__link">
  134. Basic usage
  135. </a>
  136. </li>
  137. <li class="md-nav__item md-nav__item--active md-nav__item--nested">
  138. <input class="md-nav__toggle md-toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5" checked>
  139. <label class="md-nav__link" for="nav-5">
  140. Advanced usage
  141. <span class="md-nav__icon md-icon"></span>
  142. </label>
  143. <nav class="md-nav" aria-label="Advanced usage" data-md-level="1">
  144. <label class="md-nav__title" for="nav-5">
  145. <span class="md-nav__icon md-icon"></span>
  146. Advanced usage
  147. </label>
  148. <ul class="md-nav__list" data-md-scrollfix>
  149. <li class="md-nav__item">
  150. <a href="advancedusage.html" class="md-nav__link">
  151. Advanced usage
  152. </a>
  153. </li>
  154. <li class="md-nav__item">
  155. <a href="adconnection.html" class="md-nav__link">
  156. AutoConnect WiFi connection control
  157. </a>
  158. </li>
  159. <li class="md-nav__item">
  160. <a href="adcpcontrol.html" class="md-nav__link">
  161. Captive portal control
  162. </a>
  163. </li>
  164. <li class="md-nav__item md-nav__item--active">
  165. <input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
  166. <label class="md-nav__link md-nav__link--active" for="__toc">
  167. Settings and controls for network and WiFi
  168. <span class="md-nav__icon md-icon"></span>
  169. </label>
  170. <a href="adnetwork.html" class="md-nav__link md-nav__link--active">
  171. Settings and controls for network and WiFi
  172. </a>
  173. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  174. <label class="md-nav__title" for="__toc">
  175. <span class="md-nav__icon md-icon"></span>
  176. Table of contents
  177. </label>
  178. <ul class="md-nav__list" data-md-scrollfix>
  179. <li class="md-nav__item">
  180. <a href="#404-handler" class="md-nav__link">
  181. 404 handler
  182. </a>
  183. </li>
  184. <li class="md-nav__item">
  185. <a href="#assign-user-sketchs-home-path" class="md-nav__link">
  186. Assign user sketch's home path
  187. </a>
  188. </li>
  189. <li class="md-nav__item">
  190. <a href="#change-ssid-and-password-for-softap" class="md-nav__link">
  191. Change SSID and Password for SoftAP
  192. </a>
  193. </li>
  194. <li class="md-nav__item">
  195. <a href="#combination-with-mdns" class="md-nav__link">
  196. Combination with mDNS
  197. </a>
  198. </li>
  199. <li class="md-nav__item">
  200. <a href="#make-ssid-of-softap-unique" class="md-nav__link">
  201. Make SSID of SoftAP unique
  202. </a>
  203. </li>
  204. <li class="md-nav__item">
  205. <a href="#relocate-the-autoconnect-home-path" class="md-nav__link">
  206. Relocate the AutoConnect home path
  207. </a>
  208. </li>
  209. <li class="md-nav__item">
  210. <a href="#softap-access-point-ip-settings" class="md-nav__link">
  211. SoftAP access point IP settings
  212. </a>
  213. </li>
  214. <li class="md-nav__item">
  215. <a href="#static-ip-assignment-as-a-client" class="md-nav__link">
  216. Static IP assignment as a client
  217. </a>
  218. </li>
  219. <li class="md-nav__item">
  220. <a href="#station-hostname" class="md-nav__link">
  221. Station hostname
  222. </a>
  223. </li>
  224. </ul>
  225. </nav>
  226. </li>
  227. <li class="md-nav__item">
  228. <a href="adauthentication.html" class="md-nav__link">
  229. Authentication settings
  230. </a>
  231. </li>
  232. <li class="md-nav__item">
  233. <a href="adcredential.html" class="md-nav__link">
  234. Credential accesses
  235. </a>
  236. </li>
  237. <li class="md-nav__item">
  238. <a href="adexterior.html" class="md-nav__link">
  239. Customizing page appearance
  240. </a>
  241. </li>
  242. <li class="md-nav__item">
  243. <a href="adothers.html" class="md-nav__link">
  244. Other operation settings and controls
  245. </a>
  246. </li>
  247. </ul>
  248. </nav>
  249. </li>
  250. <li class="md-nav__item md-nav__item--nested">
  251. <input class="md-nav__toggle md-toggle" data-md-toggle="nav-6" type="checkbox" id="nav-6" >
  252. <label class="md-nav__link" for="nav-6">
  253. Custom Web pages
  254. <span class="md-nav__icon md-icon"></span>
  255. </label>
  256. <nav class="md-nav" aria-label="Custom Web pages" data-md-level="1">
  257. <label class="md-nav__title" for="nav-6">
  258. <span class="md-nav__icon md-icon"></span>
  259. Custom Web pages
  260. </label>
  261. <ul class="md-nav__list" data-md-scrollfix>
  262. <li class="md-nav__item">
  263. <a href="acintro.html" class="md-nav__link">
  264. Custom Web pages with AutoConnect
  265. </a>
  266. </li>
  267. <li class="md-nav__item">
  268. <a href="acelements.html" class="md-nav__link">
  269. AutoConnectElements
  270. </a>
  271. </li>
  272. <li class="md-nav__item">
  273. <a href="acjson.html" class="md-nav__link">
  274. Custom Web pages with JSON
  275. </a>
  276. </li>
  277. <li class="md-nav__item">
  278. <a href="achandling.html" class="md-nav__link">
  279. Handling the custom Web pages
  280. </a>
  281. </li>
  282. </ul>
  283. </nav>
  284. </li>
  285. <li class="md-nav__item md-nav__item--nested">
  286. <input class="md-nav__toggle md-toggle" data-md-toggle="nav-7" type="checkbox" id="nav-7" >
  287. <label class="md-nav__link" for="nav-7">
  288. OTA Updates
  289. <span class="md-nav__icon md-icon"></span>
  290. </label>
  291. <nav class="md-nav" aria-label="OTA Updates" data-md-level="1">
  292. <label class="md-nav__title" for="nav-7">
  293. <span class="md-nav__icon md-icon"></span>
  294. OTA Updates
  295. </label>
  296. <ul class="md-nav__list" data-md-scrollfix>
  297. <li class="md-nav__item">
  298. <a href="otaupdate.html" class="md-nav__link">
  299. OTA Updates
  300. </a>
  301. </li>
  302. <li class="md-nav__item">
  303. <a href="otabrowser.html" class="md-nav__link">
  304. Using Web Browser
  305. </a>
  306. </li>
  307. <li class="md-nav__item">
  308. <a href="otaserver.html" class="md-nav__link">
  309. Using Update Server
  310. </a>
  311. </li>
  312. </ul>
  313. </nav>
  314. </li>
  315. <li class="md-nav__item md-nav__item--nested">
  316. <input class="md-nav__toggle md-toggle" data-md-toggle="nav-8" type="checkbox" id="nav-8" >
  317. <label class="md-nav__link" for="nav-8">
  318. Library APIs
  319. <span class="md-nav__icon md-icon"></span>
  320. </label>
  321. <nav class="md-nav" aria-label="Library APIs" data-md-level="1">
  322. <label class="md-nav__title" for="nav-8">
  323. <span class="md-nav__icon md-icon"></span>
  324. Library APIs
  325. </label>
  326. <ul class="md-nav__list" data-md-scrollfix>
  327. <li class="md-nav__item">
  328. <a href="api.html" class="md-nav__link">
  329. AutoConnect API
  330. </a>
  331. </li>
  332. <li class="md-nav__item">
  333. <a href="apiaux.html" class="md-nav__link">
  334. AutoConnectAux API
  335. </a>
  336. </li>
  337. <li class="md-nav__item">
  338. <a href="apiconfig.html" class="md-nav__link">
  339. AutoConnectConfig API
  340. </a>
  341. </li>
  342. <li class="md-nav__item">
  343. <a href="apielements.html" class="md-nav__link">
  344. AutoConnectElements API
  345. </a>
  346. </li>
  347. <li class="md-nav__item">
  348. <a href="apiupdate.html" class="md-nav__link">
  349. AutoConnectUpdate API
  350. </a>
  351. </li>
  352. <li class="md-nav__item">
  353. <a href="apiextra.html" class="md-nav__link">
  354. Something extra
  355. </a>
  356. </li>
  357. </ul>
  358. </nav>
  359. </li>
  360. <li class="md-nav__item md-nav__item--nested">
  361. <input class="md-nav__toggle md-toggle" data-md-toggle="nav-9" type="checkbox" id="nav-9" >
  362. <label class="md-nav__link" for="nav-9">
  363. Examples
  364. <span class="md-nav__icon md-icon"></span>
  365. </label>
  366. <nav class="md-nav" aria-label="Examples" data-md-level="1">
  367. <label class="md-nav__title" for="nav-9">
  368. <span class="md-nav__icon md-icon"></span>
  369. Examples
  370. </label>
  371. <ul class="md-nav__list" data-md-scrollfix>
  372. <li class="md-nav__item">
  373. <a href="howtoembed.html" class="md-nav__link">
  374. How to embed
  375. </a>
  376. </li>
  377. <li class="md-nav__item">
  378. <a href="datatips.html" class="md-nav__link">
  379. Tips for data conversion
  380. </a>
  381. </li>
  382. <li class="md-nav__item">
  383. <a href="menuize.html" class="md-nav__link">
  384. Attach the menus
  385. </a>
  386. </li>
  387. <li class="md-nav__item">
  388. <a href="wojson.html" class="md-nav__link">
  389. Custom Web pages w/o JSON
  390. </a>
  391. </li>
  392. </ul>
  393. </nav>
  394. </li>
  395. <li class="md-nav__item md-nav__item--nested">
  396. <input class="md-nav__toggle md-toggle" data-md-toggle="nav-10" type="checkbox" id="nav-10" >
  397. <label class="md-nav__link" for="nav-10">
  398. Appendix
  399. <span class="md-nav__icon md-icon"></span>
  400. </label>
  401. <nav class="md-nav" aria-label="Appendix" data-md-level="1">
  402. <label class="md-nav__title" for="nav-10">
  403. <span class="md-nav__icon md-icon"></span>
  404. Appendix
  405. </label>
  406. <ul class="md-nav__list" data-md-scrollfix>
  407. <li class="md-nav__item">
  408. <a href="lsbegin.html" class="md-nav__link">
  409. Inside AutoConnect::begin
  410. </a>
  411. </li>
  412. <li class="md-nav__item">
  413. <a href="credit.html" class="md-nav__link">
  414. Saved credentials access
  415. </a>
  416. </li>
  417. <li class="md-nav__item">
  418. <a href="acupload.html" class="md-nav__link">
  419. File upload handler
  420. </a>
  421. </li>
  422. <li class="md-nav__item">
  423. <a href="colorized.html" class="md-nav__link">
  424. Custom colorized
  425. </a>
  426. </li>
  427. <li class="md-nav__item">
  428. <a href="changelabel.html" class="md-nav__link">
  429. Change label text
  430. </a>
  431. </li>
  432. </ul>
  433. </nav>
  434. </li>
  435. <li class="md-nav__item">
  436. <a href="faq.html" class="md-nav__link">
  437. FAQ
  438. </a>
  439. </li>
  440. <li class="md-nav__item">
  441. <a href="changelog.html" class="md-nav__link">
  442. Change log
  443. </a>
  444. </li>
  445. <li class="md-nav__item">
  446. <a href="license.html" class="md-nav__link">
  447. License
  448. </a>
  449. </li>
  450. </ul>
  451. </nav>
  452. </div>
  453. </div>
  454. </div>
  455. <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
  456. <div class="md-sidebar__scrollwrap">
  457. <div class="md-sidebar__inner">
  458. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  459. <label class="md-nav__title" for="__toc">
  460. <span class="md-nav__icon md-icon"></span>
  461. Table of contents
  462. </label>
  463. <ul class="md-nav__list" data-md-scrollfix>
  464. <li class="md-nav__item">
  465. <a href="#404-handler" class="md-nav__link">
  466. 404 handler
  467. </a>
  468. </li>
  469. <li class="md-nav__item">
  470. <a href="#assign-user-sketchs-home-path" class="md-nav__link">
  471. Assign user sketch's home path
  472. </a>
  473. </li>
  474. <li class="md-nav__item">
  475. <a href="#change-ssid-and-password-for-softap" class="md-nav__link">
  476. Change SSID and Password for SoftAP
  477. </a>
  478. </li>
  479. <li class="md-nav__item">
  480. <a href="#combination-with-mdns" class="md-nav__link">
  481. Combination with mDNS
  482. </a>
  483. </li>
  484. <li class="md-nav__item">
  485. <a href="#make-ssid-of-softap-unique" class="md-nav__link">
  486. Make SSID of SoftAP unique
  487. </a>
  488. </li>
  489. <li class="md-nav__item">
  490. <a href="#relocate-the-autoconnect-home-path" class="md-nav__link">
  491. Relocate the AutoConnect home path
  492. </a>
  493. </li>
  494. <li class="md-nav__item">
  495. <a href="#softap-access-point-ip-settings" class="md-nav__link">
  496. SoftAP access point IP settings
  497. </a>
  498. </li>
  499. <li class="md-nav__item">
  500. <a href="#static-ip-assignment-as-a-client" class="md-nav__link">
  501. Static IP assignment as a client
  502. </a>
  503. </li>
  504. <li class="md-nav__item">
  505. <a href="#station-hostname" class="md-nav__link">
  506. Station hostname
  507. </a>
  508. </li>
  509. </ul>
  510. </nav>
  511. </div>
  512. </div>
  513. </div>
  514. <div class="md-content">
  515. <article class="md-content__inner md-typeset">
  516. <h1>Settings and controls for network and WiFi</h1>
  517. <p>AutoConnect allows you to make the static configuration of SoftAP at runtime. Its configuration includes the identification information on the network such as the IP address and the access path of the Web page handled by AutoConnect etc. In addition, the mDNS service allows SoftAP to be accessed by hostname on the local network.<br />
  518. The configuration settings for the network that can be set by AutoConnect is as follows:</p>
  519. <ul>
  520. <li><a href="#404-handler">404 handler</a></li>
  521. <li><a href="#assign-user-sketchs-home-path">Assign user sketch's home path</a></li>
  522. <li><a href="#change-ssid-and-password-for-softap">Change SSID and Password for SoftAP</a></li>
  523. <li><a href="#combination-with-mdns">Combination with mDNS</a></li>
  524. <li><a href="#make-ssid-of-softap-unique">Make SSID of SoftAP unique</a></li>
  525. <li><a href="#relocate-the-autoconnect-home-path">Relocate the AutoConnect home path</a></li>
  526. <li><a href="#softap-access-point-ip-settings">SoftAP access point IP settings</a></li>
  527. <li><a href="#static-ip-assignment-as-a-client">Static IP assignment as a client</a></li>
  528. <li><a href="#station-hostname">Station hostname</a></li>
  529. </ul>
  530. <h2 id="404-handler">404 handler<a class="headerlink" href="#404-handler" title="Permanent link">&para;</a></h2>
  531. <p>AutoConnect cannot allow the Sketch registers the <strong>"Not-found"</strong> handler (404-handler) to the ESP8266WebServer natively. AutoConnect traps Not-found handler of the ESP8266WebServer for its own page processing. If the Sketch overrides the Not-found handler, AutoConnect will miss the opportunity to control the HTTP session and becomes unresponsive to the menu.<br />
  532. Registering the Not-found handler is a different method than for ESP8266WebServer, use <a href="api.html#onnotfound">AutoConnect::onNotFound</a>. This restriction applies to the WebServer for ESP32 as well.</p>
  533. <h2 id="assign-user-sketchs-home-path">Assign user sketch's home path<a class="headerlink" href="#assign-user-sketchs-home-path" title="Permanent link">&para;</a></h2>
  534. <p><strong>HOME</strong> for returning to the user's sketch homepage will display at the bottom of the AutoConnect menu. It could be set using the <a href="api.html#home">AutoConnect::home</a> function.</p>
  535. <p><img src="images/menu_home.png" /></p>
  536. <p>The Sketch HOME path is closely related to the <a href="apiconfig.html#booturi">bootUri</a> that specifies the access path on module restart. AutoConnect has the following three parameters concerning control the URIs:</p>
  537. <ul>
  538. <li><strong>AUTOCONNECT_URI</strong><br />
  539. The <strong>ROOT</strong> URI of AutoConnect. It is defined in <a href="https://github.com/Hieromon/AutoConnect/blob/master/src/AutoConnectDefs.h#L93"><code>AutoConnectDefs.h</code></a> file and is assigned to <a href="menu.html#where-the-from">AutoConnect statistics screen</a> by default.</li>
  540. <li><a href="apiconfig.html#homeuri"><strong>AutoConnectConfig::homeUri</strong></a><br />
  541. It is the hyperlink of listed on the AutoConnect menu as <strong>HOME</strong>.</li>
  542. <li><a href="apiconfig.html#booturi"><strong>AutoConnectConfig::bootUri</strong></a><br />
  543. Which page appears at the captive portal, AUTOCONNECT_URI, or the homeUri. Its page will pop up automatically when you visit the captive portal.</li>
  544. </ul>
  545. <table>
  546. <thead>
  547. <tr>
  548. <th>The definition of <strong>HOME</strong></th>
  549. <th>Behavior</th>
  550. <th>Specified by</th>
  551. <th>Default value</th>
  552. <th>Possible value</th>
  553. </tr>
  554. </thead>
  555. <tbody>
  556. <tr>
  557. <td><strong>ROOT</strong> of AutoConnect</td>
  558. <td>Default for AC_ONBOOTURI_ROOT</td>
  559. <td><code>#define AUTOCONNECT_URI</code> in <code>AutoConnectDefs.h</code></td>
  560. <td><code>/_ac</code></td>
  561. <td>URI string</td>
  562. </tr>
  563. <tr>
  564. <td><strong>HOME</strong> for Application-specific</td>
  565. <td>Listed on the <strong>menu list</strong> as <strong>HOME</strong><br>Also, It may be linked from the <strong>menu title</strong> and is <strong>redundant</strong> with the HOME menu item.<br>eg. Case of bootURI = AC_ONBOOTURI_HOME</td>
  566. <td>AutoConnectConfig::homeURI</td>
  567. <td><code>/</code></td>
  568. <td>URI string</td>
  569. </tr>
  570. <tr>
  571. <td>Which page <strong>loads</strong> at the boot time, ROOT or HOME</td>
  572. <td>Appears after module reboot by <strong>RESET</strong> button with AutoConnect menu</td>
  573. <td>AutoConnectConfig::bootURI</td>
  574. <td>AC_ONBOOTURI_ROOT</td>
  575. <td>AC_ONBOOTURI_HOME</td>
  576. </tr>
  577. <tr>
  578. <td>Which page <strong>appears</strong> at the captive portal, ROOT or HOME</td>
  579. <td>Auto pop-up</td>
  580. <td>AutoConnectConfig::bootURI</td>
  581. <td>AC_ONBOOTURI_ROOT</td>
  582. <td>AC_ONBOOTURI_HOME</td>
  583. </tr>
  584. </tbody>
  585. </table>
  586. <h2 id="change-ssid-and-password-for-softap">Change SSID and Password for SoftAP<a class="headerlink" href="#change-ssid-and-password-for-softap" title="Permanent link">&para;</a></h2>
  587. <p>An <strong>esp8266ap</strong> is default SSID name for SoftAP of captive portal and password is <strong>12345678</strong> for ESP8266. Similarly, <strong>esp32ap</strong> and <strong>12345678</strong> for ESP32. You can change both by setting <a href="apiconfig.html#apid">apid</a> and <a href="apiconfig.html#psk">psk</a>.</p>
  588. <div class="highlight" style="background: #272822"><pre style="line-height: 125%; margin: 0;"><span></span><code><span style="color: #f8f8f2">AutoConnect</span> <span style="color: #f8f8f2">portal;</span>
  589. <span style="color: #f8f8f2">AutoConnectConfig</span> <span style="color: #f8f8f2">config;</span>
  590. <span style="color: #66d9ef">void</span> <span style="color: #a6e22e">setup</span><span style="color: #f8f8f2">()</span> <span style="color: #f8f8f2">{</span>
  591. <span style="background-color: #49483e"> <span style="color: #f8f8f2">config.apid</span> <span style="color: #f92672">=</span> <span style="color: #e6db74">&quot;ap_portal&quot;</span><span style="color: #f8f8f2">;</span>
  592. </span><span style="background-color: #49483e"> <span style="color: #f8f8f2">config.psk</span> <span style="color: #f92672">=</span> <span style="color: #e6db74">&quot;new_password&quot;</span><span style="color: #f8f8f2">;</span>
  593. </span> <span style="color: #f8f8f2">portal.config(config);</span>
  594. <span style="color: #f8f8f2">portal.begin();</span>
  595. <span style="color: #f8f8f2">}</span>
  596. </code></pre></div>
  597. <p>Also, you can specify the SSID, password for SoftAP with the constructor of the AutoConnectConfig as below.</p>
  598. <div class="highlight" style="background: #272822"><pre style="line-height: 125%; margin: 0;"><span></span><code><span style="color: #f8f8f2">AutoConnect</span> <span style="color: #f8f8f2">portal;</span>
  599. <span style="background-color: #49483e"><span style="color: #f8f8f2">AutoConnectConfig</span> <span style="color: #a6e22e">config</span><span style="color: #f8f8f2">(</span><span style="color: #e6db74">&quot;ap_portal&quot;</span><span style="color: #f8f8f2">,</span> <span style="color: #e6db74">&quot;new_password&quot;</span><span style="color: #f8f8f2">);</span>
  600. </span>
  601. <span style="color: #66d9ef">void</span> <span style="color: #a6e22e">setup</span><span style="color: #f8f8f2">()</span> <span style="color: #f8f8f2">{</span>
  602. <span style="color: #f8f8f2">portal.config(config);</span>
  603. <span style="color: #f8f8f2">portal.begin();</span>
  604. <span style="color: #f8f8f2">}</span>
  605. </code></pre></div>
  606. <p>You can also assign no password to SoftAP launched as a captive portal. Assigning a null string as <code>String("")</code> to <a href="apiconfig.html#psk"><em>AutoConnectConfig::psk</em></a> does not require a password when connecting to SoftAP.<br />
  607. But this method is not recommended. The broadcast radio of SSID emitted from SoftAP will leak and reach several tens of meters.</p>
  608. <h2 id="combination-with-mdns">Combination with mDNS<a class="headerlink" href="#combination-with-mdns" title="Permanent link">&para;</a></h2>
  609. <p>With <a href="https://github.com/esp8266/Arduino/tree/master/libraries/ESP8266mDNS">mDNS library</a>, you can access to ESP8266 by name instead of IP address after connection. The Sketch can start the MDNS responder after <a href="api.html#begin">AutoConnect::begin</a>.</p>
  610. <div class="highlight" style="background: #272822"><pre style="line-height: 125%; margin: 0;"><span></span><code><span style="color: #75715e">#include</span> <span style="color: #75715e">&lt;ESP8266WiFi.h&gt;</span>
  611. <span style="color: #75715e">#include</span> <span style="color: #75715e">&lt;ESP8266mDNS.h&gt;</span>
  612. <span style="color: #75715e">#include</span> <span style="color: #75715e">&lt;ESP8266WebServer.h&gt;</span>
  613. <span style="color: #f8f8f2">AutoConnect</span> <span style="color: #f8f8f2">Portal;</span>
  614. <span style="color: #66d9ef">void</span> <span style="color: #a6e22e">setup</span><span style="color: #f8f8f2">()</span> <span style="color: #f8f8f2">{</span>
  615. <span style="color: #66d9ef">if</span> <span style="color: #f8f8f2">(Portal.begin())</span> <span style="color: #f8f8f2">{</span>
  616. <span style="color: #66d9ef">if</span> <span style="color: #f8f8f2">(MDNS.begin(</span><span style="color: #e6db74">&quot;esp8266&quot;</span><span style="color: #f8f8f2">))</span> <span style="color: #f8f8f2">{</span>
  617. <span style="background-color: #49483e"> <span style="color: #f8f8f2">MDNS.addService(</span><span style="color: #e6db74">&quot;http&quot;</span><span style="color: #f8f8f2">,</span> <span style="color: #e6db74">&quot;tcp&quot;</span><span style="color: #f8f8f2">,</span> <span style="color: #ae81ff">80</span><span style="color: #f8f8f2">);</span>
  618. </span><span style="background-color: #49483e"> <span style="color: #f8f8f2">}</span>
  619. </span> <span style="color: #f8f8f2">}</span>
  620. <span style="color: #f8f8f2">}</span>
  621. <span style="color: #66d9ef">void</span> <span style="color: #a6e22e">loop</span><span style="color: #f8f8f2">()</span> <span style="color: #f8f8f2">{</span>
  622. <span style="color: #f8f8f2">Portal.handleClient();</span>
  623. <span style="color: #f8f8f2">}</span>
  624. </code></pre></div>
  625. <h2 id="make-ssid-of-softap-unique">Make SSID of SoftAP unique<a class="headerlink" href="#make-ssid-of-softap-unique" title="Permanent link">&para;</a></h2>
  626. <p>You can change SoftAP's SSID and password programmatically when the captive portal starts up. By using chip specific ID of esp8266/esp32 you can make SSID of SoftAP unique. SSID and password for SoftAP is <a href="apiconfig.html#apid"><em>AutoConnectConfig::apid</em></a> and <a href="apiconfig.html#psk"><em>AutoConnectConfig::psk</em></a>.</p>
  627. <div class="highlight" style="background: #272822"><pre style="line-height: 125%; margin: 0;"><span></span><code><span style="color: #f8f8f2">AutoConnect</span> <span style="color: #f8f8f2">portal;</span>
  628. <span style="color: #f8f8f2">AutoConnectConfig</span> <span style="color: #f8f8f2">acConfig;</span>
  629. <span style="color: #f8f8f2">acConfig.apid</span> <span style="color: #f92672">=</span> <span style="color: #e6db74">&quot;ESP-&quot;</span> <span style="color: #f92672">+</span> <span style="color: #f8f8f2">String(ESP.getChipId(),</span> <span style="color: #f8f8f2">HEX);</span>
  630. <span style="color: #f8f8f2">aConfig.psk</span> <span style="color: #f92672">=</span> <span style="color: #f8f8f2">YOUR_PASSWORD;</span>
  631. <span style="color: #f8f8f2">portal.config(acConfig);</span>
  632. <span style="color: #f8f8f2">portal.begin();</span>
  633. </code></pre></div>
  634. <div class="admonition hint">
  635. <p class="admonition-title">Obtaining chip ID for ESP32</p>
  636. <p><code>acConfig.apid = "ESP-" + String((uint32_t)(ESP.getEfuseMac() &gt;&gt; 32), HEX);</code></p>
  637. </div>
  638. <h2 id="relocate-the-autoconnect-home-path">Relocate the AutoConnect home path<a class="headerlink" href="#relocate-the-autoconnect-home-path" title="Permanent link">&para;</a></h2>
  639. <p>A home path of AutoConnect is <strong>/_ac</strong> by default. You can access from the browser with <code>http://IPADDRESS_OF_ESP_MODULE/_ac</code>. You can change the home path by revising <a href="https://github.com/Hieromon/AutoConnect/blob/master/src/AutoConnectDefs.h#L69"><strong>AUTOCONNECT_URI</strong></a> macro in <a href="https://github.com/Hieromon/AutoConnect/blob/master/src/AutoConnectDefs.h"><code>AutoConnectDefs.h</code></a> header file.</p>
  640. <div class="highlight" style="background: #272822"><pre style="line-height: 125%; margin: 0;"><span></span><code><span style="color: #75715e">#define AUTOCONNECT_URI &quot;/_ac&quot;</span>
  641. </code></pre></div>
  642. <h2 id="softap-access-point-ip-settings">SoftAP access point IP settings<a class="headerlink" href="#softap-access-point-ip-settings" title="Permanent link">&para;</a></h2>
  643. <p>AutoConnect will activate <a href="https://arduino-esp8266.readthedocs.io/en/latest/esp8266wifi/soft-access-point-class.html#soft-access-point-class">SoftAP</a> at failed the 1<sup>st</sup>-WiFi.begin. Its SoftAP settings are stored in AutoConnectConfig as the following parameters. The Sketch could be configured SoftAP using these parameters, refer the <a href="apiconfig.html">AutoConnectConfig API</a> for details.</p>
  644. <table>
  645. <thead>
  646. <tr>
  647. <th>AutoConnectConfig member</th>
  648. <th>Settings for</th>
  649. <th>Defined symbol</th>
  650. <th>Initial value</th>
  651. </tr>
  652. </thead>
  653. <tbody>
  654. <tr>
  655. <td><a href="apiconfig.html#apip"><strong>apip</strong></a></td>
  656. <td>SoftAP IP address</td>
  657. <td>AUTOCONNECT_AP_IP</td>
  658. <td>172.217.28.1</td>
  659. </tr>
  660. <tr>
  661. <td><a href="apiconfig.html#gateway"><strong>gateway</strong></a></td>
  662. <td>Gateway IP address</td>
  663. <td>AUTOCONNECT_AP_GW</td>
  664. <td>172.217.28.1</td>
  665. </tr>
  666. <tr>
  667. <td><a href="apiconfig.html#netmask"><strong>netmask</strong></a></td>
  668. <td>Subnet mask for the SoftAP</td>
  669. <td>AUTOCONNECT_AP_NM</td>
  670. <td>255.255.255.0</td>
  671. </tr>
  672. <tr>
  673. <td><a href="apiconfig.html#channel"><strong>channel</strong></a></td>
  674. <td>WiFi channel for the SoftAP</td>
  675. <td>AUTOCONNECT_AP_CH</td>
  676. <td>1</td>
  677. </tr>
  678. <tr>
  679. <td><a href="apiconfig.html#hidden"><strong>hidden</strong></a></td>
  680. <td>Hide the SoftAP</td>
  681. <td></td>
  682. <td>false</td>
  683. </tr>
  684. </tbody>
  685. </table>
  686. <h2 id="static-ip-assignment-as-a-client">Static IP assignment as a client<a class="headerlink" href="#static-ip-assignment-as-a-client" title="Permanent link">&para;</a></h2>
  687. <p>It is possible to assign a static IP Address to ESP8266/ESP32 in STA mode.<sup id="fnref:3"><a class="footnote-ref" href="#fn:3">1</a></sup> By default DHCP is enabled and it becomes the IP address assigned by the DHCP server with <strong>WiFi.begin</strong>.</p>
  688. <p>These settings are made via <a href="apiconfig.html">AutoConnectConfig</a> as in the case of SoftAP settings. To assign a static IP to ESP8266/ESP32 with WIFI_STA, the following parameters are required:</p>
  689. <table>
  690. <thead>
  691. <tr>
  692. <th>AutoConnectConfig member</th>
  693. <th>Settings for</th>
  694. <th>Initial value</th>
  695. </tr>
  696. </thead>
  697. <tbody>
  698. <tr>
  699. <td><a href="apiconfig.html#staip"><strong>staip</strong></a></td>
  700. <td>Station IP address</td>
  701. <td>0.0.0.0</td>
  702. </tr>
  703. <tr>
  704. <td><a href="apiconfig.html#stagateway"><strong>staGateway</strong></a></td>
  705. <td>Gateway address for the station</td>
  706. <td>0.0.0.0</td>
  707. </tr>
  708. <tr>
  709. <td><a href="apiconfig.html#stanetmask"><strong>staNetmask</strong></a></td>
  710. <td>Subnet mask for the the station</td>
  711. <td>0.0.0.0</td>
  712. </tr>
  713. <tr>
  714. <td><a href="apiconfig.html#dns1"><strong>dns1</strong></a></td>
  715. <td>Primary DNS server IP address</td>
  716. <td>0.0.0.0</td>
  717. </tr>
  718. <tr>
  719. <td><a href="apiconfig.html#dns2"><strong>dns2</strong></a></td>
  720. <td>Secondary DNS server IP address</td>
  721. <td>0.0.0.0</td>
  722. </tr>
  723. </tbody>
  724. </table>
  725. <p>The above parameters must be set using <a href="apiconfig.html">AutoConnect::config</a> prior to <a href="apiconfig.html#begin">AutoConnect::begin</a> call as following:</p>
  726. <div class="highlight" style="background: #272822"><pre style="line-height: 125%; margin: 0;"><span></span><code><span style="color: #f8f8f2">AutoConnect</span> <span style="color: #f8f8f2">portal;</span>
  727. <span style="color: #f8f8f2">AutoConnectConfig</span> <span style="color: #f8f8f2">Config;</span>
  728. <span style="color: #f8f8f2">Config.staip</span> <span style="color: #f92672">=</span> <span style="color: #f8f8f2">IPAddress(</span><span style="color: #ae81ff">192</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">168</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">1</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">10</span><span style="color: #f8f8f2">);</span>
  729. <span style="color: #f8f8f2">Config.staGateway</span> <span style="color: #f92672">=</span> <span style="color: #f8f8f2">IPAddress(</span><span style="color: #ae81ff">192</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">168</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">1</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">1</span><span style="color: #f8f8f2">);</span>
  730. <span style="color: #f8f8f2">Config.staNetmask</span> <span style="color: #f92672">=</span> <span style="color: #f8f8f2">IPAddress(</span><span style="color: #ae81ff">255</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">255</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">255</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">0</span><span style="color: #f8f8f2">);</span>
  731. <span style="color: #f8f8f2">Config.dns1</span> <span style="color: #f92672">=</span> <span style="color: #f8f8f2">IPAddress(</span><span style="color: #ae81ff">192</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">168</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">1</span><span style="color: #f8f8f2">,</span><span style="color: #ae81ff">1</span><span style="color: #f8f8f2">);</span>
  732. <span style="color: #f8f8f2">portal.config(Config);</span>
  733. <span style="color: #f8f8f2">portal.begin();</span>
  734. </code></pre></div>
  735. <h2 id="station-hostname">Station hostname<a class="headerlink" href="#station-hostname" title="Permanent link">&para;</a></h2>
  736. <p><a href="apiconfig.html#hostname"><em>AutoConnectConfig::hostName</em></a> assigns a station DHCP hostname to the ESP module. The hostname must satisfy <a href="https://tools.ietf.org/html/rfc952">RFC952</a> compliant and meet the following restrictions:</p>
  737. <ul>
  738. <li>Up to 24 characters</li>
  739. <li>Only the alphabet (a-z, A-Z), digits (0-9), minus sign (-)</li>
  740. <li>No '-' as last character</li>
  741. </ul>
  742. <div class="footnote">
  743. <hr />
  744. <ol>
  745. <li id="fn:3">
  746. <p>Static IP address assignment is available from version 0.9.3.&#160;<a class="footnote-backref" href="#fnref:3" title="Jump back to footnote 1 in the text">&#8617;</a></p>
  747. </li>
  748. </ol>
  749. </div>
  750. </article>
  751. </div>
  752. </div>
  753. </main>
  754. <footer class="md-footer">
  755. <div class="md-footer-nav">
  756. <nav class="md-footer-nav__inner md-grid" aria-label="Footer">
  757. <a href="adcpcontrol.html" class="md-footer-nav__link md-footer-nav__link--prev" rel="prev">
  758. <div class="md-footer-nav__button md-icon">
  759. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
  760. </div>
  761. <div class="md-footer-nav__title">
  762. <div class="md-ellipsis">
  763. <span class="md-footer-nav__direction">
  764. Previous
  765. </span>
  766. Captive portal control
  767. </div>
  768. </div>
  769. </a>
  770. <a href="adauthentication.html" class="md-footer-nav__link md-footer-nav__link--next" rel="next">
  771. <div class="md-footer-nav__title">
  772. <div class="md-ellipsis">
  773. <span class="md-footer-nav__direction">
  774. Next
  775. </span>
  776. Authentication settings
  777. </div>
  778. </div>
  779. <div class="md-footer-nav__button md-icon">
  780. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4z"/></svg>
  781. </div>
  782. </a>
  783. </nav>
  784. </div>
  785. <div class="md-footer-meta md-typeset">
  786. <div class="md-footer-meta__inner md-grid">
  787. <div class="md-footer-copyright">
  788. <div class="md-footer-copyright__highlight">
  789. Copyright &copy; 2018-2020 Hieromon Ikasamo
  790. </div>
  791. Made with
  792. <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
  793. Material for MkDocs
  794. </a>
  795. </div>
  796. <div class="md-footer-social">
  797. <a href="https://github.com/Hieromon" target="_blank" rel="noopener" title="github.com" class="md-footer-social__link">
  798. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
  799. </a>
  800. <a href="https://twitter.com/hieromon" target="_blank" rel="noopener" title="twitter.com" class="md-footer-social__link">
  801. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z"/></svg>
  802. </a>
  803. </div>
  804. </div>
  805. </div>
  806. </footer>
  807. </div>
  808. <script src="assets/javascripts/vendor.fd16492e.min.js"></script>
  809. <script src="assets/javascripts/bundle.7836ba4d.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.placeholder": "Search", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.term.missing": "Missing"}</script>
  810. <script>
  811. app = initialize({
  812. base: ".",
  813. features: [],
  814. search: Object.assign({
  815. worker: "assets/javascripts/worker/search.4ac00218.min.js"
  816. }, typeof search !== "undefined" && search)
  817. })
  818. </script>
  819. <script src="js/gifffer.min.js"></script>
  820. </body>
  821. </html>