FAQ:OpenWRT
Jump to navigation
Jump to search
Perso
Install basic packages
opkg update
opkg install diffutils lsof usbutils htop screen
opkg install snmpd
opkg install mount-utils block-mount kmod-usb-storage kmod-fs-ext4 kmod-fs-vfat kmod-fs-exfat kmod-fs-ntfs kmod-fs-hfs kmod-fs-hfsplus kmod-nls-cp437 kmod-nls-iso8859-1
opkg install dnsmasq-full
# Go in http://10.146.199.1/cgi-bin/luci/admin/network/dhcp Advanced Settings and enable both DNSSEC option
List overlay installed packages
- Information: Tip is extracted from https://openwrt.org/docs/guide-user/installation/generic.sysupgrade
root@OpenWrt:~# find /usr/lib/opkg/info -name "*.control" \( \
\( -exec test -f /rom/{} \; -exec echo {} rom \; \) -o \
\( -exec test -f /overlay/upper/{} \; -exec echo {} overlay \; \) -o \
\( -exec echo {} unknown \; \) \
\) | sed -e 's,.*/,,;s/\.control /\t/' | grep overlay | awk '{print $1}' | tr "\n" " " | xargs echo opkg install
opkg install librt libncurses6 collectd-mod-iwinfo collectd-mod-ping libopenssl1.1 libusb-1.0-0 bind-client curl ddns-scripts luci-app-ddns terminfo diffutils ddns-scripts_nsupdate collectd-mod-rrdtool libtirpc librrd1 libltdl7 zlib lsof collectd-mod-cpu collectd-mod-load vim ethtool luci-app-statistics liboping collectd-mod-memory usbutils luci-compat collectd-mod-interface luci-app-adblock adblock htop collectd-mod-wireless luci-lib-iptparser luci-lib-ipkg libcurl4 collectd collectd-mod-network libatomic1 rrdtool1 ca-bundle libmbedtls12 bind-libs screen
DDNS
Install ddns-scripts_nsupdate
- On the server that will generate Kopenwrt.+157+55429.key and Kopenwrt.+157+55429.private files
dnssec-keygen -a HMAC-md5 -b 512 -n USER openwrt
- In the /etc/bind9/named.conf.local, update section like this one
key openwrt {
algorithm HMAC-MD5;
secret "ADDTHEKEYFROM_openwrt_PRIVATE_FILE";
};
zone "leurent.eu" {
type master;
notify yes;
file "/etc/bind/leurent/leurent.eu.db";
update-policy { grant openwrt name openwrt.leurent.eu A; };
...
};
- On openwrt box, you can install ddns-scripts_nsupdate + LUCI Interface and have a look at /usr/lib/ddns/update_nsupdate.sh to see how it works
opkg install ddns-scripts_nsupdate luci-app-ddns
- Now you can go in LUCI Services / Dynamic DNS section
- Use the bind-nsupdate client
- In Basic Settings
- Set Lookup Hostname = openwrt.leurent.eu
- Set DDNS Service provider [IPv4] = bind-nsupdate
- Set Domain = openwrt.leurent.eu
- Set Username = openwrt
- Set Password = For the password copy the "secret" of the HMAC-MD5 key
- In Advanced Settings
- Set DNS-Server = ns1.leurent.eu
- In Basic Settings
System Commands
Upgrade all packages
![]() | Start the command in a screen because if you upgrade netifd for exemple, you will loose connection and kill the upgrade in the middle of the process |
screen
opkg update
opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade
cf https://lede-project.org/docs/user-guide/opkg
Use a Huawei USB LTE HiLink Modem as 4G Backup on my OpenWRT Router
![]() | These commands came from https://lecrabeinfo.net/installer-firmware-openwrt-sur-routeur-wi-fi.html#un-modem-lte-4g |
- Install usb-modeswitch and kmod-usb-net-rndis to switch the LTE stick from USB storage to USB LTE Modem
opkg update
opkg install kmod-usb-net-rndis usb-modeswitch
- Verify the mode did switch, otherwise insert back the key or reboot
root@LEDE:~# lsusb | grep LTE
Bus 002 Device 003: ID 12d1:14dc Huawei Technologies Co., Ltd. E33372 LTE/UMTS/GSM HiLink Modem/Networkcard
- Verify that you have a new network interface (eth2 in my case)
root@LEDE:~# dmesg | grep cdc_ether
[ 16.075790] usbcore: registered new interface driver cdc_ether
[ 19.232911] cdc_ether 2-1:1.0 eth2: register 'cdc_ether' at usb-f10f8000.usb3-1, CDC Ethernet Device, 0c:5b:8f:xx:xx:xx
- Setup a new wwan interface with eth2 + DHCP mode
uci set network.wwan=interface
uci set network.wwan.ifname='eth2'
uci set network.wwan.proto='dhcp'
uci commit
- Enable firewall on wwan
uci add_list firewall.@zone[1].network='wwan'
uci commit
- Restart Router
reboot
- Go in LUCI Interfaces / Network / Interfaces - WWAN / Advanced Configuration / Set Use gateway metric = 10. So you can see afterwards that the route via WWAN interface is used as backup if the default route goes down
root@OpenWrt:~# ip route
default via 212.147.11.76 dev pppoe-wan
default via 192.168.8.1 dev eth2 src 192.168.8.100 metric 10
10.146.199.0/24 dev br-lan scope link src 10.146.199.1
192.168.8.0/24 dev eth2 scope link metric 10
212.147.11.76 dev pppoe-wan scope link src 83.228.247.238