[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"public-config":3,"i-flag:ph-4x3":14,"i-flag:us-4x3":19,"i-flag:de-4x3":21,"i-flag:hk-4x3":23,"i-tabler:lifebuoy":25,"i-tabler:timeline":28,"i-tabler:apps":30,"i-tabler:package":32,"i-tabler:circle-half-2":34,"i-tabler:sun":36,"i-tabler:moon":38,"i-tabler:menu-2":40,"i-tabler:user":42,"i-tabler:notebook":44,"i-simple-icons:forgejo":46,"i-tabler:shield-lock":48,"i-tabler:tools":50,"i-tabler:calendar":52,"i-tabler:x":54,"$f36g2m18ja8gbe":56,"i-tabler:arrow-left":113,"i-tabler:tag":115},{"matomo":4,"booking":7,"site":9,"blog":11,"newsletter":12},{"enabled":5,"siteId":6},true,"7",{"enabled":5,"url":8},"https:\u002F\u002Fcal.com\u002Fjdbungart",{"url":10},"https:\u002F\u002Fjdneer.com",{"enabled":5},{"enabled":13},false,{"left":15,"top":15,"width":16,"height":17,"rotate":15,"vFlip":13,"hFlip":13,"body":18},0,640,480,"\u003Cpath fill=\"#0038a8\" d=\"M0 0h640v240H0z\"\u002F>\u003Cpath fill=\"#ce1126\" d=\"M0 240h640v240H0z\"\u002F>\u003Cpath fill=\"#fff\" d=\"M415.7 240L0 480V0\"\u002F>\u003Cpath fill=\"#fcd116\" d=\"M26.7 42.4L41 55l16.6-9.2l-7.4 17.5l14 13l-19-1.6l-8.1 17.2l-4.3-18.5L14 71l16.3-10zm323.8 172.3l.4 19l18 6.3l-18 6.2l-.4 19l-11.5-15.1l-18.2 5.5l10.8-15.6l-10.8-15.6l18.2 5.5zM37.2 388.1l8 17.2l19-1.6l-13.9 13l7.4 17.5l-16.6-9.1l-14.4 12.4l3.6-18.7L14 409l18.9-2.4zm114.2-249l-6.2 6.2l3.1 47l-3 .3l-5.7-42.9l-5.1 5l7.6 38.4a48 48 0 0 0-17.2 7.1l-21.7-32.4H96l26.4 34.3l-2.4 2l-31.1-35.5h-8.8v8.8l35.4 31l-2 2.5l-34.3-26.3v7.1l32.5 21.7q-5.2 7.8-7.1 17.2L66.3 223l-5.1 5l42.9 5.7q-.3 1.6-.3 3.1l-47-3l-6.2 6.2l6.2 6.2l47-3.1l.3 3.1l-42.9 5.7l5 5l38.4-7.6a48 48 0 0 0 7.1 17.2l-32.5 21.7v7.2l34.3-26.3l2 2.4l-35.4 31v8.8H89l31-35.4l2.5 2L96 312.2h7.2l21.7-32.5q7.8 5.2 17.2 7.1l-7.6 38.4l5 5l5.7-42.9q1.5.3 3.1.3l-3 47l6.1 6.2l6.3-6.2l-3.1-47l3-.3l5.7 43l5.1-5.1l-7.6-38.4a48 48 0 0 0 17.2-7.1l21.7 32.5h7.2l-26.4-34.3l2.4-2l31.1 35.4h8.8v-8.8l-35.4-31l2-2.4l34.3 26.3v-7.2l-32.5-21.7q5.2-7.8 7.1-17.2l38.3 7.6l5.1-5l-42.9-5.7q.3-1.5.3-3.1l47 3l6.2-6.1l-6.2-6.2l-47 3l-.3-3l42.9-5.7l-5-5l-38.4 7.5a48 48 0 0 0-7.1-17.2l32.5-21.7v-7.1l-34.3 26.3l-2-2.4l35.4-31v-8.9H214l-31 35.5l-2.5-2l26.4-34.3h-7.2L178 200.2q-7.8-5.2-17.2-7.1l7.6-38.3l-5-5l-5.7 42.8l-3.1-.3l3-47z\"\u002F>",{"left":15,"top":15,"width":16,"height":17,"rotate":15,"vFlip":13,"hFlip":13,"body":20},"\u003Cpath fill=\"#bd3d44\" d=\"M0 0h640v480H0\"\u002F>\u003Cpath stroke=\"#fff\" stroke-width=\"37\" d=\"M0 55.3h640M0 129h640M0 203h640M0 277h640M0 351h640M0 425h640\"\u002F>\u003Cpath fill=\"#192f5d\" d=\"M0 0h364.8v258.5H0\"\u002F>\u003Cmarker id=\"SVGEq3dreKJ\" markerHeight=\"30\" markerWidth=\"30\">\u003Cpath fill=\"#fff\" d=\"m14 0l9 27L0 10h28L5 27z\"\u002F>\u003C\u002Fmarker>\u003Cpath fill=\"none\" marker-mid=\"url(#SVGEq3dreKJ)\" d=\"m0 0l16 11h61h61h61h61h60L47 37h61h61h60h61L16 63h61h61h61h61h60L47 89h61h61h60h61L16 115h61h61h61h61h60L47 141h61h61h60h61L16 166h61h61h61h61h60L47 192h61h61h60h61L16 218h61h61h61h61h60z\"\u002F>",{"left":15,"top":15,"width":16,"height":17,"rotate":15,"vFlip":13,"hFlip":13,"body":22},"\u003Cpath fill=\"#fc0\" d=\"M0 320h640v160H0z\"\u002F>\u003Cpath fill=\"#000001\" d=\"M0 0h640v160H0z\"\u002F>\u003Cpath fill=\"red\" d=\"M0 160h640v160H0z\"\u002F>",{"left":15,"top":15,"width":16,"height":17,"rotate":15,"vFlip":13,"hFlip":13,"body":24},"\u003Cpath fill=\"#ec1b2e\" d=\"M0 0h640v480H0\"\u002F>\u003Cpath id=\"SVG5tfvBPpj\" fill=\"#fff\" d=\"M346.3 103.1C267 98 230.6 201.9 305.6 240.3c-26-22.4-20.6-55.3-10.1-72.4l1.9 1.1c-13.8 23.5-11.2 52.7 11.1 71c-12.7-12.3-9.5-39 12.1-48.9s23.6-39.3 16.4-49.1q-14.7-25.6 9.3-38.9M307.9 164l-4.7 7.4l-1.8-8.6l-8.6-2.3l7.8-4.3l-.6-8.9l6.5 6.1l8.3-3.3l-3.7 8.1l5.6 6.8z\"\u002F>\u003Cuse href=\"#SVG5tfvBPpj\" transform=\"rotate(72 312.5 243.5)\"\u002F>\u003Cuse href=\"#SVG5tfvBPpj\" transform=\"rotate(144 312.5 243.5)\"\u002F>\u003Cuse href=\"#SVG5tfvBPpj\" transform=\"rotate(216 312.5 243.5)\"\u002F>\u003Cuse href=\"#SVG5tfvBPpj\" transform=\"rotate(288 312.5 243.5)\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":27},24,"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M8 12a4 4 0 1 0 8 0a4 4 0 1 0-8 0\"\u002F>\u003Cpath d=\"M3 12a9 9 0 1 0 18 0a9 9 0 1 0-18 0m12 3l3.35 3.35M9 15l-3.35 3.35m0-12.7L9 9m9.35-3.35L15 9\"\u002F>\u003C\u002Fg>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":29},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"m4 16l6-7l5 5l5-6\"\u002F>\u003Cpath d=\"M14 14a1 1 0 1 0 2 0a1 1 0 1 0-2 0M9 9a1 1 0 1 0 2 0a1 1 0 1 0-2 0m-6 7a1 1 0 1 0 2 0a1 1 0 1 0-2 0m16-8a1 1 0 1 0 2 0a1 1 0 1 0-2 0\"\u002F>\u003C\u002Fg>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":31},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1zm0 10a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1zm10 0a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1zm0-8h6m-3-3v6\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":33},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m12 3l8 4.5v9L12 21l-8-4.5v-9zm0 9l8-4.5M12 12v9m0-9L4 7.5m12-2.25l-8 4.5\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":35},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 12a9 9 0 1 0 18 0a9 9 0 1 0-18 0m9-9v18m0-7l7-7m-7 12l8.5-8.5M12 9l4.5-4.5\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":37},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 12a4 4 0 1 0 8 0a4 4 0 1 0-8 0m-5 0h1m8-9v1m8 8h1m-9 8v1M5.6 5.6l.7.7m12.1-.7l-.7.7m0 11.4l.7.7m-12.1-.7l-.7.7\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":39},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 3h.393a7.5 7.5 0 0 0 7.92 12.446A9 9 0 1 1 12 2.992z\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":41},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 6h16M4 12h16M4 18h16\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":43},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 7a4 4 0 1 0 8 0a4 4 0 0 0-8 0M6 21v-2a4 4 0 0 1 4-4h4a4 4 0 0 1 4 4v2\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":45},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M6 4h11a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H6a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1m3 0v18m4-14h2m-2 4h2\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":47},"\u003Cpath fill=\"currentColor\" d=\"M16.777 0a2.9 2.9 0 1 1-2.529 4.322H12.91a4.266 4.266 0 0 0-4.265 4.195v2.118a7.08 7.08 0 0 1 4.147-1.42l.118-.002h1.338a2.9 2.9 0 0 1 5.43 1.422a2.9 2.9 0 0 1-5.43 1.422H12.91a4.266 4.266 0 0 0-4.265 4.195v2.319A2.9 2.9 0 0 1 7.222 24A2.9 2.9 0 0 1 5.8 18.57V8.589a7.11 7.11 0 0 1 6.991-7.108l.118-.001h1.338A2.9 2.9 0 0 1 16.778 0M7.223 19.905a1.194 1.194 0 1 0 0 2.389a1.194 1.194 0 0 0 0-2.389m9.554-10.464a1.194 1.194 0 1 0 0 2.389a1.194 1.194 0 0 0 0-2.39m0-7.735a1.194 1.194 0 1 0 0 2.389a1.194 1.194 0 0 0 0-2.389\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":49},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M12 3a12 12 0 0 0 8.5 3A12 12 0 0 1 12 21A12 12 0 0 1 3.5 6A12 12 0 0 0 12 3\"\u002F>\u003Cpath d=\"M11 11a1 1 0 1 0 2 0a1 1 0 1 0-2 0m1 1v2.5\"\u002F>\u003C\u002Fg>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":51},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M3 21h4L20 8a1.5 1.5 0 0 0-4-4L3 17zM14.5 5.5l4 4\"\u002F>\u003Cpath d=\"M12 8L7 3L3 7l5 5M7 8L5.5 9.5M16 12l5 5l-4 4l-5-5m4 1l-1.5 1.5\"\u002F>\u003C\u002Fg>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":53},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 7a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2zm12-4v4M8 3v4m-4 4h16m-9 4h1m0 0v3\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":55},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M18 6L6 18M6 6l12 12\"\u002F>",{"slug":57,"title":58,"excerpt":59,"image":60,"publishedAt":61,"topics":62,"readMinutes":66,"html":67,"metaTitle":58,"metaDescription":68,"shareImage":69,"updatedAt":73,"author":74,"related":76},"stretch-ixgbe-driver-allow-unsupported-sfp-modules-on-intel-x520-cards","Debian: IXGBE Driver - Allow unsupported SFP+ Modules on Intel X520 Cards","The Server hardware we use for Proxmox deployments often has Intel X520 (ixgbe driver) or X710 (i40e driver) cards installed. These provide for several SFP+ ports required for 10 Gigabit connectivity. Enterprise vendors such as DELL and Intel provide compatibility lists for SFP transceivers that are supported by their network adapters. Often times adapter firmware requires specifically encoded modules, preventing any unsupported modules from being initialized. One way to work around this probl","\u002Fcontent\u002Fimages\u002F2019\u002F09\u002FIMG_20190926_171628.resized-2.jpg","2019-09-27T17:50:00.000+08:00",[63],{"key":64,"label":65},"guides","Guides",2,"\u003Cp>The Server hardware we use for Proxmox deployments often has Intel X520 (ixgbe driver) or X710 (i40e driver) cards installed. These provide for several SFP+ ports required for 10 Gigabit connectivity.\u003C\u002Fp>\u003Cp>Enterprise vendors such as DELL and \u003Ca href=\"https:\u002F\u002Fwww.intel.com\u002Fcontent\u002Fwww\u002Fus\u002Fen\u002Fsupport\u002Farticles\u002F000005528\u002Fnetwork-and-i-o\u002Fethernet-products.html?ref=ghost.jdneer.com\">Intel provide compatibility lists\u003C\u002Fa> for SFP transceivers that are supported by their network adapters. Often times adapter firmware requires specifically encoded modules, preventing any unsupported modules from being initialized.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card kg-card-hascaption\">\u003Cimg src=\"\u002Fcontent\u002Fimages\u002F2019\u002F09\u002FIMG_20190926_171309.resized.jpg\" class=\"kg-image\" alt=\"\" loading=\"lazy\" width=\"1984\" height=\"1120\" srcset=\"\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2019\u002F09\u002FIMG_20190926_171309.resized.jpg 600w, \u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2019\u002F09\u002FIMG_20190926_171309.resized.jpg 1000w, \u002Fcontent\u002Fimages\u002Fsize\u002Fw1600\u002F2019\u002F09\u002FIMG_20190926_171309.resized.jpg 1600w, \u002Fcontent\u002Fimages\u002F2019\u002F09\u002FIMG_20190926_171309.resized.jpg 1984w\" sizes=\"(min-width: 720px) 720px\" \u002F>\u003Cfigcaption>\u003Cspan>DELL 669869-004 DELL X520\u002FI350 DAUGHTER CARD 10GE of a DELL PowerEdge R620\u003C\u002Fspan>\u003C\u002Ffigcaption>\u003C\u002Ffigure>\u003Cp>One way to work around this problem is to use generic SFP transceivers\u002Fmodules from \u003Ca href=\"http:\u002F\u002Ffiberstore.com\u002F?ref=ghost.jdneer.com\">FS.com\u003C\u002Fa>. Then, using the \u003Ca href=\"https:\u002F\u002Fwww.fs.com\u002Fsg\u002Fproducts\u002F75866.html?ref=ghost.jdneer.com\">FS Box\u003C\u002Fa> all generic modules can be (re-)encoded on-the-fly to work with any enterprise gear including such from Juniper, DELL and Cisco.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-image-card kg-card-hascaption\">\u003Cimg src=\"\u002Fcontent\u002Fimages\u002F2019\u002F09\u002FIMG_20190926_165634.resized-5.jpg\" class=\"kg-image\" alt=\"\" loading=\"lazy\" width=\"1984\" height=\"1120\" srcset=\"\u002Fcontent\u002Fimages\u002Fsize\u002Fw600\u002F2019\u002F09\u002FIMG_20190926_165634.resized-5.jpg 600w, \u002Fcontent\u002Fimages\u002Fsize\u002Fw1000\u002F2019\u002F09\u002FIMG_20190926_165634.resized-5.jpg 1000w, \u002Fcontent\u002Fimages\u002Fsize\u002Fw1600\u002F2019\u002F09\u002FIMG_20190926_165634.resized-5.jpg 1600w, \u002Fcontent\u002Fimages\u002F2019\u002F09\u002FIMG_20190926_165634.resized-5.jpg 1984w\" sizes=\"(min-width: 720px) 720px\" \u002F>\u003Cfigcaption>\u003Cspan>Trying to use unsupported modules with an X520 under Debian\u003C\u002Fspan>\u003C\u002Ffigcaption>\u003C\u002Ffigure>\u003Cp>But... what to do in case you don't have access to an FS Box?\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-code-card\">\u003Cpre>\u003Ccode>root@XXXX-pveX:~# lsb_release -a\nDistributor ID:\tDebian\nDescription:\tDebian GNU\u002FLinux 9.9 (stretch)\nRelease:\t9.9\nCodename:\tstretch\n\u003C\u002Fcode>\u003C\u002Fpre>\u003Cfigcaption>\u003Cp>\u003Cspan>Verifying Debian version using LSB release utility.\u003C\u002Fspan>\u003C\u002Fp>\u003C\u002Ffigcaption>\u003C\u002Ffigure>\u003Cp>Well, at least in case of Linux and an Intel X520 the answer is simple; you tell the IXGBE driver to allow unsupported modules.\u003C\u002Fp>\u003Cfigure class=\"kg-card kg-code-card\">\u003Cpre>\u003Ccode>root@XXXX-pveX:~# echo \"options ixgbe allow_unsupported_sfp=1\" &gt; \u002Fetc\u002Fmodprobe.d\u002Fixgbe.conf:\nroot@XXXX-pveX:~# depmod -a\nroot@XXXX-pveX:~# update-initramfs -u -k `uname -r`\u003C\u002Fcode>\u003C\u002Fpre>\u003Cfigcaption>\u003Cp>\u003Cspan>Enable unsupported SFP transceivers to be used in SFP+ ports of Intel X520 10G network adapter.\u003C\u002Fspan>\u003C\u002Fp>\u003C\u002Ffigcaption>\u003C\u002Ffigure>\u003Cp>The above does the following:\u003C\u002Fp>\u003Cul>\u003Cli>Set the \u003Cstrong>allow_unsupported_sfp\u003C\u002Fstrong> option for the IXGBE driver\u003C\u002Fli>\u003Cli>Tell the kernel to reload\u002Fprobe all kernel modules applying the changes\u003C\u002Fli>\u003Cli>Update the initial ramdisk for the currently used kernel (so changes are loaded during boot)\u003C\u002Fli>\u003C\u002Ful>\u003Cp>There's no need to repeat any of the steps outlined above when installing new kernel versions (e.g. as part of system updates). The initial ramdisk of any new kernel will automatically include the specified options for the ixgbe driver.\u003C\u002Fp>\u003Cp>Similar options are available for other kernel modules\u002Fdrivers! To get a full list of available options of a specific driver you may use the \u003Cstrong>modinfo\u003C\u002Fstrong> command.\u003C\u002Fp>\u003Cpre>\u003Ccode>root@XXXX-pveX:~# modinfo ixgbe | egrep '^(file|version|descr|parm)'\nfilename:       \u002Flib\u002Fmodules\u002F4.15.18-16-pve\u002Fkernel\u002Fdrivers\u002Fnet\u002Fethernet\u002Fintel\u002Fixgbe\u002Fixgbe.ko\nversion:        5.1.0-k\ndescription:    Intel(R) 10 Gigabit PCI Express Network Driver\nparm:           max_vfs:Maximum number of virtual functions to allocate per physical function - default is zero and maximum value is 63. (Deprecated) (uint)\nparm:           allow_unsupported_sfp:Allow unsupported and untested SFP+ modules on 82599-based adapters (uint)\nparm:           debug:Debug level (0=none,...,16=all) (int)\n\u003C\u002Fcode>\u003C\u002Fpre>","The Server hardware we use for Proxmox deployments often has Intel X520 (ixgbe driver) or X710 (i40e driver) cards installed. These provide for several...",{"src":60,"height":70,"width":71,"type":72},1120,1984,"image\u002Fjpeg","2025-01-13T09:41:39.000+08:00",{"name":75,"url":10,"owner":5},"JD Bungart",[77,89,97,105],{"slug":78,"title":79,"excerpt":80,"image":81,"publishedAt":82,"topics":83,"readMinutes":88},"package-cooldowns-github-package-firewall-npm-pnpm-bun-pip-uv-poetry","Package Cooldowns Compared: GitHub Package Firewall vs. What npm, pnpm, Yarn, Bun, pip, uv and Poetry Already Do","GitHub now offers an install-time firewall for npm, free in preview and metered later. Most package managers already ship a free cooldown. Here is what each tool does, the copy-paste config, and where cooldowns stop helping.","\u002Fcontent\u002Fimages\u002F2026\u002F10\u002Fpkg-cooldowns-conveyor-alberto-rodriguez-unsplash.jpg","2026-10-26T14:00:00.000+08:00",[84,85],{"key":64,"label":65},{"key":86,"label":87},"security","Security",1,{"slug":90,"title":91,"excerpt":92,"image":93,"publishedAt":94,"topics":95,"readMinutes":88},"hetzner-cloud-private-network-behind-your-own-firewall","Building a Private Network on Hetzner Cloud Behind Your Own Firewall","Keep servers off the public internet: a Hetzner Cloud private network with one route, your own firewall as the gateway, and working configs for Ubuntu and Rocky Linux 8.","\u002Fcontent\u002Fimages\u002F2026\u002F10\u002Fhetzner-private-network-feature-a1.png","2026-10-22T20:00:00.000+08:00",[96],{"key":64,"label":65},{"slug":98,"title":99,"excerpt":100,"image":101,"publishedAt":102,"topics":103,"readMinutes":88},"guide-to-setting-up-an-ookla-speedtest-server-on-rockylinux-8","Guide to Setting Up an OOKLA Speedtest Server on RockyLinux 8\u002F9","I'm gonna walk you through a simple guide to get your OOKLA Speedtest server(s) up and running on RockyLinux 8. We'll even make it start automatically when your server boots. Oh, and we'll sprinkle in some basic security tips to keep things safe.","https:\u002F\u002Fimages.unsplash.com\u002Fphoto-1610034534785-4706b86dd6a5?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=M3wxMTc3M3wwfDF8c2VhcmNofDN8fHNwZWVkdGVzdHxlbnwwfHx8fDE2OTM3NTMxNjR8MA&ixlib=rb-4.0.3&q=80&w=2000","2025-01-10T14:10:00.000+08:00",[104],{"key":64,"label":65},{"slug":106,"title":107,"excerpt":108,"image":109,"publishedAt":110,"topics":111,"readMinutes":88},"cost-efficient-virtual-machine-clustering-with-proxmox-ve-for-smes-and-enterprises","Cost-efficient Virtual Machine Clustering with Proxmox VE for SMEs and Enterprises","Proxmox VE is a web based, open source hardware virtualization platform based on Debian GNU\u002FLinux. It allows for virtualizing unmodified guests using the kernel based virtual machine (KVM) which is the native implementation of hardware assisted virtualization that's embedded into the linux kernel. In addition, Proxmox VE also supports Linux containers (LXC) being an OS level type of virtualization. Hardware assisted virtualization requires special support of a machine's processor commonly known","\u002Fcontent\u002Fimages\u002F2018\u002F09\u002FIMG_20180927_002650_1500-1.jpg","2018-09-29T22:37:00.000+08:00",[112],{"key":64,"label":65},{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":114},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M5 12h14M5 12l6 6m-6-6l6-6\"\u002F>",{"left":15,"top":15,"width":26,"height":26,"rotate":15,"vFlip":13,"hFlip":13,"body":116},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M6.5 7.5a1 1 0 1 0 2 0a1 1 0 1 0-2 0\"\u002F>\u003Cpath d=\"M3 6v5.172a2 2 0 0 0 .586 1.414l7.71 7.71a2.41 2.41 0 0 0 3.408 0l5.592-5.592a2.41 2.41 0 0 0 0-3.408l-7.71-7.71A2 2 0 0 0 11.172 3H6a3 3 0 0 0-3 3\"\u002F>\u003C\u002Fg>"]