v2016.1.rst 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276
  1. Gluon 2016.1
  2. ============
  3. Added hardware support
  4. ~~~~~~~~~~~~~~~~~~~~~~
  5. ar71xx-generic
  6. ^^^^^^^^^^^^^^
  7. * Buffalo
  8. - WZR-HP-G300NH
  9. * D-Link
  10. - DIR-505 (A1)
  11. * TP-Link
  12. - CPE210/220/510/520 v1.1
  13. - TL-WA901N/ND v1
  14. - TL-WR710N v2
  15. - TL-WR801N/ND v1, v2
  16. - TL-WR841N/ND v10
  17. - TL-WR843N/ND v1
  18. - TL-WR940N v1, v2, v3
  19. - TL-WR941ND v6
  20. - TL-WR1043N/ND v3
  21. * Ubiquiti
  22. - airGateway
  23. - airRouter
  24. - UniFi AP Outdoor+
  25. * Western Digital
  26. - My Net N600
  27. - My Net N750
  28. x86-xen_domu
  29. ^^^^^^^^^^^^
  30. New target containing the necessary drivers for use in Xen.
  31. x86-64
  32. ^^^^^^
  33. 64bit version of `x86-generic`. The generic image can also be used in KVM with VirtIO.
  34. New features
  35. ~~~~~~~~~~~~
  36. Kernel module opkg repository
  37. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  38. We've not been able to keep ABI compatiblity with the kernel of the official OpenWrt images.
  39. Therefore, Gluon now generates an opkg repository with modules itself.
  40. The repository can be found at `output/modules/` by default, the image output directory has
  41. been moved from `images/` to `output/images/`. See the updated :doc:`../user/getting_started` guide
  42. for information on the handling of the signing keys for this repository.
  43. The `opkg_repo` site.conf option has been replaced to allow specifying this and other additional repositories.
  44. New status page
  45. ^^^^^^^^^^^^^^^
  46. The new status page provides a visually pleasing experience, and displays all important information
  47. on a node in a clear manner. It also contains a real-time signal strength graph for all neighbouring
  48. nodes to aid with the alignment of antennas.
  49. 802.11s mesh support
  50. ^^^^^^^^^^^^^^^^^^^^
  51. Gluon now supports using 802.11s for its mesh links instead of IBSS (Adhoc). This will allow supporting
  52. more WLAN hardware in the future (like Ralink/Mediatek, which don't support AP and IBSS mode simultaneously).
  53. Note that batman-adv is still used on top of 802.11s (and 802.11s forwarding is disabled), the mesh routing protocol
  54. provided by 802.11s is not used.
  55. Multicast filter extension
  56. ^^^^^^^^^^^^^^^^^^^^^^^^^^
  57. The `gluon-ebtables-filter-multicast` package has been extended to filter out multicast
  58. ICMP and ICMPv6 Echo Requests (ping) and Node Information Queries (RFC4620). This prevents
  59. pings to multicast addresses like ff02::1 to cause traffic peaks
  60. (as all nodes and clients would answer such a ping).
  61. French translation
  62. ^^^^^^^^^^^^^^^^^^
  63. A French translation for the Config Mode/Expert Mode has been added.
  64. Bugfixes
  65. ~~~~~~~~
  66. * Update kernel code for the QCA953x
  67. Might improve stability of the TP-Link TL-WR841N/ND v9.
  68. * Fix model detection on some Netgear WNDR3700v2
  69. The broken devices will identify as "NETGEAR ".
  70. This also breaks the autoupdater, making a manual upgrade necessary.
  71. * Ensure that `odhcp6c` doesn't spawn multiple instances of ``dhcpv6.script``
  72. * Fix support for Buffalo WZR-600DHP
  73. A flashable factory image is generated now. The sysupgrade image is still shared
  74. with the WZR-HP-AG300H.
  75. Site changes
  76. ~~~~~~~~~~~~
  77. * ``site.conf``
  78. - New WLAN configuration
  79. ``wifi24`` and ``wifi5`` need to be updated to a new more flexible format.
  80. A configuration using the old format
  81. ::
  82. {
  83. channel = 1,
  84. htmode = 'HT20'
  85. ssid = 'entenhausen.freifunk.net',
  86. mesh_ssid = 'xe:xx:xx:xx:xx:xx',
  87. mesh_bssid = 'xe:xx:xx:xx:xx:xx',
  88. mesh_mcast_rate = 12000,
  89. }
  90. would look like this in the new format::
  91. {
  92. channel = 1,
  93. ap = {
  94. ssid = 'entenhausen.freifunk.net',
  95. },
  96. ibss = {
  97. ssid = 'xe:xx:xx:xx:xx:xx',
  98. bssid = 'xe:xx:xx:xx:xx:xx',
  99. mcast_rate = 12000,
  100. },
  101. }
  102. The ``htmode`` option has been dropped, the channel width is now always set to 20MHz
  103. (see https://github.com/freifunk-gluon/gluon/issues/487 for a discussion of this change).
  104. In addition to the old IBSS (Adhoc) based meshing, 802.11s-based meshing can be configured
  105. using the ``mesh`` section. Example::
  106. {
  107. channel = 1,
  108. ap = {
  109. ssid = 'entenhausen.freifunk.net',
  110. },
  111. mesh = {
  112. id = 'mesh.entenhausen.freifunk.net', -- can by any string, human-readable or random
  113. mcast_rate = 12000,
  114. },
  115. }
  116. While using ``ibss`` and ``mesh`` at the same time is possible, is causes high load in
  117. very active meshes, so it is advisable to avoid such configurations.
  118. - Bandwidth limitation defaults
  119. The old section ``simple_tc.mesh_vpn`` has been moved to ``fastd_mesh_vpn.bandwidth_limit`` and the ``ifname``
  120. field isn't used anymore. What looked like this
  121. before
  122. ::
  123. simple_tc = {
  124. mesh_vpn = {
  125. ifname = 'mesh-vpn',
  126. enabled = false,
  127. limit_egress = 200,
  128. limit_ingress = 3000,
  129. },
  130. }
  131. needs to be changed to
  132. ::
  133. fastd_mesh_vpn = {
  134. -- ...
  135. bandwidth_limit = {
  136. enabled = false,
  137. egress = 200,
  138. ingress = 3000,
  139. },
  140. }
  141. - opkg repository configuration
  142. The opkg configuration has been changed to be more flexible and allow specifying custom repositories.
  143. Example::
  144. opkg = {
  145. openwrt = 'http://opkg.services.ffeh/openwrt/%n/%v/%S/packages',
  146. extra = {
  147. modules = 'http://opkg.services.ffeh/modules/gluon-%GS-%GR/%S',
  148. },
  149. }
  150. The keys of the ``extra`` table (like ``modules`` in this example) can be chosen arbitrarily.
  151. Instead of explicitly specifying the whole URL, using patterns is recommended. The following
  152. patterns are understood:
  153. - ``%n`` is replaced by the OpenWrt version codename (e.g. "chaos_calmer")
  154. - ``%v`` is replaced by the OpenWrt version number (e.g. "15.05")
  155. - ``%S`` is replaced by the target architecture (e.g. "ar71xx/generic")
  156. - ``%GS`` is replaced by the Gluon site code (as specified in ``site.conf``)
  157. - ``%GV`` is replaced by the Gluon version
  158. - ``%GR`` is replaced by the Gluon release (as specified in ``site.mk``)
  159. * ``site.mk``
  160. - The packages `gluon-announce` and `gluon-announced` were merged into
  161. the package `gluon-respondd`. If you had any of them (probably
  162. `gluon-announced`) in your package list, you have to replace them.
  163. * ``i18n/``
  164. - The translations of ``gluon-config-mode:pubkey`` now have to show the fastd
  165. public key themselves if desired, making the formatting of the key and whether it is shown at
  166. all configurable. To retain the old format, add ``<p>`` to the beginning of
  167. your translations and append::
  168. "</p>"
  169. "<div class=\"the-key\">"
  170. " # <%= hostname %>"
  171. " <br/>"
  172. "<%= pubkey %>"
  173. "</div>"
  174. Internals
  175. ~~~~~~~~~
  176. * OpenWrt has been updated to Chaos Calmer
  177. * mac80211 has been backported from OpenWrt trunk r47249 (wireless-testing 2015-07-21)
  178. This allows us to support the TL-WR940N v3/TL-WR941ND v6, which uses a TP9343 (QCA956x) SoC.
  179. * Several packages have been moved from the Gluon repo to the packages repo, removing references to Gluon:
  180. - gluon-cron -> micrond (the crontabs are now read from ``/usr/lib/micron.d`` instead of ``/lib/gluon/cron``)
  181. - gluon-radvd -> uradvd
  182. - gluon-simple-tc -> simple-tc (the config file has been renamed as well)
  183. * Some of the Gluon-specific i18n support code in the build system has been removed, as LuCI now provides
  184. similar facilities
  185. * The C-based `luci-lib-jsonc` library is now used for JSON encoding/decoding instead of the pure Lua `luci-lib-json`
  186. * The site config is now stored as JSON on the node. The Lua interface ``gluon.site_config`` is still available, and a C interface was added as part of the new package `libgluonutil`.
  187. * The `respondd` daemon now uses C modules instead of Lua snippets, which greatly enhances response speed and reduces memory usage. The Gluon integration package has
  188. been renamed from `gluon-announced` to `gluon-respondd`.
  189. Known Issues
  190. ~~~~~~~~~~~~
  191. * Default TX power on many Ubiquiti devices is too high, correct offsets are unknown (`#94 <https://github.com/freifunk-gluon/gluon/issues/94>`_)
  192. Reducing the TX power in the Expert Mode is recommended.
  193. * batman-adv causes stability issues for both alfred and respondd/announced (`#177 <https://github.com/freifunk-gluon/gluon/issues/177>`_)
  194. * The MAC address of the WAN interface is modified even when Mesh-on-WAN is disabled (`#496 <https://github.com/freifunk-gluon/gluon/issues/496>`_)
  195. This may lead to issues in environments where a fixed MAC address is expected (like VMware when promicious mode is disallowed).
  196. * Inconsistent respondd/announced API (`#522 <https://github.com/freifunk-gluon/gluon/issues/522>`_)
  197. The current API is inconsistent and will be replaced in the next release. The old API will still be supported for a while.