diff --git a/quic/qbone/bonnet/tun_device.cc b/quic/qbone/bonnet/tun_device.cc
index c0f635d..3ca52e8 100644
--- a/quic/qbone/bonnet/tun_device.cc
+++ b/quic/qbone/bonnet/tun_device.cc
@@ -103,10 +103,6 @@
 }
 
 bool TunDevice::OpenDevice() {
-  if (file_descriptor_ != kInvalidFd) {
-    CleanUpFileDescriptor();
-  }
-
   struct ifreq if_request;
   memset(&if_request, 0, sizeof(if_request));
   // copy does not zero-terminate the result string, but we've memset the entire
diff --git a/quic/qbone/bonnet/tun_device_packet_exchanger.cc b/quic/qbone/bonnet/tun_device_packet_exchanger.cc
index 4783e9c..2119671 100644
--- a/quic/qbone/bonnet/tun_device_packet_exchanger.cc
+++ b/quic/qbone/bonnet/tun_device_packet_exchanger.cc
@@ -11,12 +11,14 @@
 namespace quic {
 
 TunDevicePacketExchanger::TunDevicePacketExchanger(
+    int fd,
     size_t mtu,
     KernelInterface* kernel,
     QbonePacketExchanger::Visitor* visitor,
     size_t max_pending_packets,
     StatsInterface* stats)
     : QbonePacketExchanger(visitor, max_pending_packets),
+      fd_(fd),
       mtu_(mtu),
       kernel_(kernel),
       stats_(stats) {}
@@ -76,8 +78,8 @@
   return std::make_unique<QuicData>(read_buffer.release(), result, true);
 }
 
-void TunDevicePacketExchanger::set_file_descriptor(int fd) {
-  fd_ = fd;
+int TunDevicePacketExchanger::file_descriptor() const {
+  return fd_;
 }
 
 const TunDevicePacketExchanger::StatsInterface*
diff --git a/quic/qbone/bonnet/tun_device_packet_exchanger.h b/quic/qbone/bonnet/tun_device_packet_exchanger.h
index 115f5b5..1d28fee 100644
--- a/quic/qbone/bonnet/tun_device_packet_exchanger.h
+++ b/quic/qbone/bonnet/tun_device_packet_exchanger.h
@@ -35,6 +35,8 @@
     ABSL_MUST_USE_RESULT virtual int64_t PacketsWritten() const = 0;
   };
 
+  // |fd| is a open file descriptor on a TUN device that's opened for both read
+  // and write.
   // |mtu| is the mtu of the TUN device.
   // |kernel| is not owned but should out live objects of this class.
   // |visitor| is not owned but should out live objects of this class.
@@ -42,13 +44,14 @@
   // the TUN device become blocked.
   // |stats| is notified about packet read/write statistics. It is not owned,
   // but should outlive objects of this class.
-  TunDevicePacketExchanger(size_t mtu,
+  TunDevicePacketExchanger(int fd,
+                           size_t mtu,
                            KernelInterface* kernel,
                            QbonePacketExchanger::Visitor* visitor,
                            size_t max_pending_packets,
                            StatsInterface* stats);
 
-  void set_file_descriptor(int fd);
+  ABSL_MUST_USE_RESULT int file_descriptor() const;
 
   ABSL_MUST_USE_RESULT const StatsInterface* stats_interface() const;
 
diff --git a/quic/qbone/bonnet/tun_device_packet_exchanger_test.cc b/quic/qbone/bonnet/tun_device_packet_exchanger_test.cc
index c8f3ff0..4a00c60 100644
--- a/quic/qbone/bonnet/tun_device_packet_exchanger_test.cc
+++ b/quic/qbone/bonnet/tun_device_packet_exchanger_test.cc
@@ -30,15 +30,14 @@
 class TunDevicePacketExchangerTest : public QuicTest {
  protected:
   TunDevicePacketExchangerTest()
-      : exchanger_(kMtu,
+      : exchanger_(kFd,
+                   kMtu,
                    &mock_kernel_,
                    &mock_visitor_,
                    kMaxPendingPackets,
-                   &mock_stats_) {
-    exchanger_.set_file_descriptor(kFd);
-  }
+                   &mock_stats_) {}
 
-  ~TunDevicePacketExchangerTest() override = default;
+  ~TunDevicePacketExchangerTest() override {}
 
   MockKernel mock_kernel_;
   StrictMock<MockVisitor> mock_visitor_;
