Index: frontend/node_modules/default-gateway/index.js
===================================================================
--- frontend/node_modules/default-gateway/index.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
+++ frontend/node_modules/default-gateway/index.js	(revision 9af201e94b5a79beb92a30858fc54de4bc3b9449)
@@ -0,0 +1,35 @@
+"use strict";
+
+const {platform, type} = require("os");
+
+const supportedPlatforms = new Set([
+  "aix",
+  "android",
+  "darwin",
+  "freebsd",
+  "linux",
+  "openbsd",
+  "sunos",
+  "win32"
+]);
+
+const plat = platform();
+
+if (supportedPlatforms.has(plat)) {
+  let file = plat;
+  if (plat === "aix") {
+    file = type() === "OS400" ? "ibmi" : "sunos"; // AIX `netstat` output is compatible with Solaris
+  }
+
+  const m = require(`./${file}.js`);
+  module.exports.v4 = () => m.v4();
+  module.exports.v6 = () => m.v6();
+  module.exports.v4.sync = () => m.v4.sync();
+  module.exports.v6.sync = () => m.v6.sync();
+} else {
+  const err = new Error(`Unsupported Platform: ${plat}`);
+  module.exports.v4 = () => Promise.reject(err);
+  module.exports.v6 = () => Promise.reject(err);
+  module.exports.v4.sync = () => { throw err; };
+  module.exports.v6.sync = () => { throw err; };
+}
